Search…

Vòng Lặp while trong Python

09/09/20202 min read
Tìm hiểu và sử dụng cấu trúc vòng lặp while trong Python.

Vòng lặp while

Trong Python, cấu trúc vòng lặp while tương tự với hầu hết các ngôn ngữ khác, thực hiện lặp đi lặp lại một lệnh hoặc một khối lệnh cho đến khi nhận được giá trị False từ biểu thức sau nó.

Cấu trúc while

while condition:
     statement(s) 

Trong đó:

  • statement(s) là các khối lệnh nằm trong vòng lặp. 
  • condition chính là điều kiện lặp của while

Nguyên tắc hoạt động

Nguyên tắc hoạt động của vòng lặp while được thể hiện qua sơ đồ khối sau:

Sơ đồ khối thể hiện nguyên tắc hoạt động vòng lặp while

Khi nhận giá trị true từ condition, các khối lệnh bên trong while sẽ được thực hiện. Sau khi thực hiện xong sẽ quay về và kiểm tra giá trị của condition và  cứ tiếp tục như thế cho đến khi nhận được giá trị false từ condition thì vòng lặp sẽ kết thúc.

Một lưu ý nhỏ là khối lệnh bên trong while có khả năng sẽ không bao giờ được thực hiện nếu lần kiểm tra giá trị đầu tiên của while trả về giá trị false. Khi đó, vòng lặp while sẽ được bỏ qua và chương trình sẽ thực hiện tiếp các lệnh sau nó.

Ví dụ

Tìm hiểu ví dụ sau để rõ hơn về vòng lặp while.

animalsList =
[
	"Dog",
	"Cat"
]

count = 0

while (animalsList[count] != "TOMBSTONE"):
	print (animalsList[count])
	count += 1;

Kết quả in ra màn hình:

Dog
Cat

Vòng lặp vô hạn

Vòng lặp while có thể trở thành một vòng lặp vô hạn nếu như điều kiện sau while không bao giờ trả về giá trị false. Vì vậy khi sử dụng vòng lặp while  cần thận trọng để tránh gây ra lỗi không đáng có làm sai mục đích lập trình.

Xét lại ví dụ trên nhưng trong trường hợp "quên" tăng biến count lên:

animalsList = \
[
	"Dog",
	"Cat"
]

count = 0

while (animalsList[count] != "Dog"):
	print (animalList[count])

Kết quả in ra màn hình sẽ là hàng loạt dòng "Dog" và không bao giờ dừng lại. Có thể thấy do một chút nhầm lẫn nhỏ sẽ khiến vòng lặp while trở nên vô hạn.

IO Stream

IO Stream Co., Ltd

30 Trinh Dinh Thao, Hoa Thanh ward, Tan Phu district, Ho Chi Minh city, Vietnam
+84 28 22 00 11 12
developer@iostream.co

383/1 Quang Trung, ward 10, Go Vap district, Ho Chi Minh city
Business license number: 0311563559 issued by the Department of Planning and Investment of Ho Chi Minh City on February 23, 2012

©IO Stream, 2013 - 2024