Vòng lặp trong Python giúp thực thi lặp đi lặp lại một đoạn mã mà không cần phải viết lại nhiều lần. Có hai loại vòng lặp chính là vòng lặp for (lặp qua một dãy phần tử) và vòng lặp while (dựa trên điều kiện). Ngoài ra, Python cũng hỗ trợ vòng lặp lồng nhau, cho phép sử dụng một vòng lặp bên trong vòng lặp khác để giải quyết các tác vụ phức tạp hơn.

1. Vòng lặp While trong Python
Vòng lặp while
thực hiện một đoạn mã nhiều lần miễn là điều kiện còn đúng. Khi điều kiện trở thành False
, chương trình sẽ dừng vòng lặp và tiếp tục thực thi các dòng lệnh tiếp theo.
Cú pháp vòng lặp while:
while điều_kiện: # Các lệnh cần thực thi
Ví dụ:
count = 0 while count < 3: count += 1 print("Xin chào!")
Kết quả:
Xin chào!
Xin chào!
Xin chào!
2. Sử dụng else với vòng lặp While
Trong Python, có thể kết hợp else
với vòng lặp while
. Khối lệnh else
sẽ được thực thi khi điều kiện của while
trở thành False
. Tuy nhiên, nếu vòng lặp kết thúc do lệnh break
, khối else
sẽ không chạy.
Ví dụ:
i = 0 while i < 3: i += 1 print("Đang lặp...") else: print("Hoàn tất vòng lặp!")
Kết quả:
Đang lặp...
Đang lặp...
Đang lặp...
Hoàn tất vòng lặp!
3. Vòng lặp While vô hạn
Vòng lặp while
có thể chạy vô tận nếu điều kiện luôn đúng.
Ví dụ:
while True: print("Chương trình đang chạy...") # Nhấn Ctrl + C để dừng
Lưu ý: Tránh sử dụng vòng lặp vô hạn trừ khi bạn có điều kiện dừng rõ ràng.
4. Vòng lặp For trong Python
Vòng lặp for
được sử dụng để duyệt qua danh sách, chuỗi, bộ dữ liệu, từ điển hoặc phạm vi số.
Cú pháp vòng lặp for:
for biến in tập_hợp: # Các lệnh cần thực thi
Ví dụ:
for i in range(4): print(i)
Kết quả:
0
1
2
3
5. Lặp qua danh sách, bộ dữ liệu, chuỗi và từ điển
Lặp danh sách(list):
fruits = ["Táo", "Cam", "Dưa hấu"] for fruit in fruits: print(fruit)
Lặp chuỗi(string):
for char in "Python": print(char)
Lặp từ điển(dictionary):
person = {"name": "John", "age": 30} for key, value in person.items(): print(key, ":", value)
6. Sử dụng vòng lặp for với chỉ mục
Dùng range()
để lặp qua danh sách bằng chỉ mục:
numbers = [10, 20, 30, 40] for i in range(len(numbers)): print(f"Phần tử {i}: {numbers[i]}")
7. Sử dụng else với vòng lặp for
Tương tự while
, có thể sử dụng else
trong for
. Khối else
chạy khi vòng lặp hoàn thành mà không gặp break
.
for i in range(3): print(i) else: print("Hoàn tất vòng lặp!")
8. Vòng lặp lồng nhau (Nested Loops)
Có thể đặt một vòng lặp bên trong vòng lặp khác.
for i in range(1, 4): for j in range(i): print(i, end=" ") print()
Kết quả:
1 2 2 3 3 3
9. Các câu lệnh điều khiển vòng lặp
Lệnh continue
Bỏ qua phần còn lại của vòng lặp hiện tại và tiếp tục vòng lặp tiếp theo.
for letter in "Python": if letter == "h": continue print(letter)
Lệnh break
Dừng vòng lặp ngay lập tức.
for letter in "Python": if letter == "h": break print(letter)
Lệnh pass
Dùng khi cần có một vòng lặp nhưng chưa muốn viết nội dung bên trong.
for i in range(5): pass # Chưa có logic, để sau viết tiếp
10. Vòng lặp hoạt động như thế nào bên trong Python?
Thực chất, Python sử dụng trình lặp (iterator
) và phương thức next()
để duyệt từng phần tử.
fruits = ["Táo", "Cam", "Dưa hấu"] iter_obj = iter(fruits) while True: try: fruit = next(iter_obj) print(fruit) except StopIteration: break
Kết quả:
Táo
Cam
Dưa hấu
Tóm tắt kiến thức
✅ While loop – Chạy liên tục khi điều kiện đúng
✅ For loop – Lặp qua danh sách, chuỗi, từ điển
✅ Nested loop – Vòng lặp lồng nhau
✅ Loop control – break
, continue
, pass
Kiến thức thêm