Computer >> Hướng Dẫn Máy Tính >  >> Lập Trình >> Python

Cách dùng vòng lặp for trong Python?


Vòng lặp for trong Python dùng để lặp qua một số phần tử hoặc một khoảng số nguyên cụ thể. Các phần tử có thể là của mảng, chuỗi hoặc bất kỳ đối tượng lặp (iterable) nào trong Python.

Vòng lặp for là câu lệnh lặp được dùng nhiều nhất. Hầu hết các bài toán lập trình dùng for loop trong giải pháp.

Vòng lặp for in range

Python có vòng lặp for ... in range. Nó nhận hai giá trị số nguyên chỉ định khoảng mà biến phải lặp. Nếu chỉ có một tham số số nguyên, giá trị đó được coi là cuối khoảng và đầu là 0 mặc định.

Cú pháp

for variable in range(start, end)
for variable in range(end)

Lưu ý: Vòng lặp for trong Python lặp một lần ít hơn giá trị end. Nghĩa là nếu start=1, end=5, vòng lặp chạy cho 1,2,3,4. Giá trị start bao gồm (inclusive) nhưng end không bao gồm (exclusive).

Ví dụ

for i in range(1, 5):
    print(i, end=" ")
print()
for i in range(5):
    print(i, end=" ")

Kết quả

1 2 3 4
0 1 2 3 4

Vòng lặp for ngược (Reverse for loop)

Vòng lặp for in range có thể nhận tham số thứ ba -1, chỉ định lặp ngược. Vòng lặp bắt đầu từ start và giảm dần đến end (không bao gồm).

Ví dụ

for i in range(5, 0, -1):
    print(i, end=" ")

Kết quả

5 4 3 2 1

Chỉ định tham số thứ ba trong for loop

Tham số thứ ba trong for loop có thể sửa đổi để dùng for loop theo nhiều cách. Tham số thứ ba thực chất chỉ định bước nhảy (step) của biến. Mặc định là 1.

Nếu tham số thứ ba âm, chỉ định lặp ngược. Số bước lùi được chỉ định bởi tham số này.

Nếu tham số dương, lặp tiến. Số bước tiến được chỉ định bởi tham số này.

Hiểu qua ví dụ:

Ví dụ

for i in range(0, 11, 2):
    print(i, end=" ")
print()
for i in range(10, -1, -2):
    print(i, end=" ")

Kết quả

0 2 4 6 8 10
10 8 6 4 2 0

Vòng lặp for in

Vòng lặp này dùng để lặp qua đối tượng iterable như string hoặc mảng. Không dùng để lặp qua khoảng số nguyên cụ thể.

Cú pháp

for variable in iterable_object

Vòng lặp này duyệt qua tất cả phần tử của iterable object từng cái một mà không quan tâm chỉ số. Nếu cần chỉ số, dùng for in range.

Ví dụ

st = "Tutorials"
for i in st:
    print(i, end=" ")
print()
array = [2, 4, 6, 8, 10]
for i in array:
    print(i, end=" ")
print()
for i in range(len(array)):
    print(array[i], end=" ")

Kết quả

T u t o r i a l s
2 4 6 8 10
2 4 6 8 10

Lưu ý: Như ví dụ trên, biến trong for in giữ giá trị phần tử của iterable object, còn biến trong for in range giữ chỉ số của phần tử.