for trong Python


Hôm nay ta sẽ tìm hiểu vòng lặp for. Trước tiên ta tìm hiểu khái niệm List trong python. List trong python giống như mảng (Array) trong các ngôn ngữ lập trình khác. Thay vì lưu giá trị vào biến, ta có thể lưu giá trị vào List. List có thể lưu nhiều giá trị cùng một lúc, còn biến chỉ lưu được 1 giá trị.

Ta khai báo 1 list và gán giá trị vào list.

myList = [1,2,3]

Để truy xuất vào list ta dùng index. Trong list thì index bắt đầu từ 0.

  index : 0 1 2
myList = [1,2,3]

Để lấy ra giá trị đầu tiên

print(myList[0])  # 1

Để lặp qua list này ta dùng for.

for item in myList:
    print("Value = ",item)
    
#  Value =  1
#  Value =  2
#  Value =  3

Vòng lặp sẽ duyệt qua từng phần tử của myList. Từng phần tử đại diện bởi biến item. Ta có thể đặt bất cứ tên gì ta muốn.

Ta có thể viết như sau.

for element in ['cat','dog','lion']:
   print(element)
   
# cat
# dog
# lion

Vòng lặp for sẽ duyệt qua list = ['cat','dog','lion'] và in ra từng phần tử.

Ví dụ ta muốn lặp các giá trị từ 0 tới 10. Thay vì ta phải tạo 1 list.

myList2 = [0,1,2,3,4,5,6,8,9,10]

rồi dùng for để lặp. Ta có thể dùng cách sau.

for item in range(0,11):
    print(item)
# 0
# 1
# 2
# 3
# 4
# 5
# 6
# 7
# 8
# 9
# 10

Khi khai báo in range (0,11) thì chỉ lặp đến 10. không bao gồm 11 nhé.

Ta có thể dùng for để tính tổng các giá trị trong list. Ta xem ví dụ sau.

total = 0
array = [1, 3, 4, 2, 9]

for element in array:
    total = total + element

print("Total :", total)    
# Total : 19

Hoặc tìm số lớn nhất trong list.

my_array = [1,2,3,4]
max = 0

for element in my_array:
    if element > max:
        max = element
        
print("Max : ", max)
# Max: 4

Hoặc tìm số nhỏ nhất trong list.

min = 10
my_array = [1,3,4,5,7]
for element in my_array:
    if element < min:
        min = element
        
print("Min", min) 
# Min 1

Ta có thể loop qua 1 chuỗi string

    index   01234
myString = "Hello"

Chuỗi cũng có index giống như list. Ta có thể truy xuất vào giá trị đầu tiên của chuỗi.

print(myString[0])  # H

Ta có thể tính xem chuỗi có bao nhiêu ký tự.

print(len(myString)) # 5

Ta có thể truy cập vào ký tự cuối cùng của chuỗi.

length = len(myString) # 5
print(myString[length -1]) # o

Ta thấy length - 1 = 5 -1 = 4, index 4 có giá trị là "o".

Ta thử loop qua chuỗi nhé.

for element in myString:
    print(element)
    
# H
# e
# l
# l
# o

Vậy ta đã tìm hiểu xong for loop trong python rồi nhé. (*_+)