Trong Python, lệnh break và continue có thể thay đổi “dòng chảy” của một vòng lặp bình thường.
Những vòng lặp lặp lại một khối code cho đến khi điều kiện kiểm tra False, nhưng đôi khi chúng ta muốn chấm dứt vòng lặp hiện tại hoặc thậm chí toàn bộ vòng lặp mà không kiểm tra biểu thức điều kiện. Đó là lúc chúng ta cần đến sự trợ giúp của lệnh break và continue.
Lệnh break trong Python
Lệnh break kết thúc vòng lặp chứa nó và truyền điều khiển đến lệnh tiếp theo sau khối code của vòng lặp đó. Nếu lệnh break ở trong một vòng lặp lồng nhau (vòng lặp bên trong một vòng lặp khác), break sẽ chấm dứt vòng lặp trong cùng.
Cú pháp của lệnh break:
break
Sơ đồ lệnh break:
Nếu sử dụng break trong vòng lặp for Python thì sẽ như sau:
for var in sequence:
#khối code bên trong vòng lặp for
if dieu_kien:
break
#code khác bên trong vòng lặp for
#code bên ngoài vòng lặp for
Khi break được thực thi thì “#code khác bên trong vòng lặp for” sẽ bị bỏ qua và chuyển đến “#code bên ngoài vòng lặp for”.
Nếu sử dụng break trong vòng lặp while Python sẽ như sau:
while dieu_kien_kiem_tra:
#code bên trong vòng lặp while
if dieu_kien:
break
#code khác bên trong vòng lặp while
#code bên ngoài vòng lặp while
Khi break được thực thi thì “#code khác bên trong vòng lặp while” sẽ bị bỏ qua và chuyển đến “#code bên ngoài vòng lặp while”.
Ví dụ về lệnh break Python
#Sử dụng break trong for
for val in "string":
if val == "i":
break
print(val)
print("Kết thúc!")
Trong đoạn code trên, chúng ta lặp chuỗi “string”, và kiểm tra điều kiện, nếu chữ cái là “i” thì sẽ thực thi lệnh break, nếu chữ cái khác “i” thì in ra màn hình. Chạy code trên ta được kết quả là các chữ cái trước “i” đã được in ra. Sau đó vòng lặp kết thúc, như kết quả dưới đây:
s
t
r
Kết thúc!
bien = 10
while bien > 0:
print ('Giá trị biến hiện tại là: ', bien)
bien = bien -1
if bien == 5:
break
print ("OK!")
Code trên kiểm tra và in biến theo giá trị giảm dần từ 10, cho đến khi biến bằng 5 thì kết thúc vòng lặp.
Giá trị biến hiện tại là: 10
Giá trị biến hiện tại là: 9
Giá trị biến hiện tại là: 8
Giá trị biến hiện tại là: 7
Giá trị biến hiện tại là: 6
OK!
Lệnh continue trong Python
Lệnh continue được sử dụng để bỏ qua phần còn lại của code bên trong vòng lặp, áp dụng cho lần lặp hiện tại. Nghĩa là vòng lặp không chấm dứt, nó sẽ tiếp tục với lần lặp kế tiếp.
continue
Sơ đồ lệnh continue trong Python:
Lệnh continue trong vòng lặp for sẽ như sau:
for var in sequence:
#khối code bên trong vòng lặp for
if dieu_kien:
continue
#code khác bên trong vòng lặp for
#code bên ngoài vòng lặp for
Khi continue được thực thi thì “#code khác bên trong vòng lặp for” bị bỏ qua và quay trở lại “#Khối code bên trong vòng lặp for”
Lệnh continue trong vòng lặp while sẽ như sau:
while dieu_kien_kiem_tra:
#code bên trong vòng lặp while
if dieu_kien:
continue#code khác bên trong vòng lặp while
#code bên ngoài vòng lặp while
Khi continue được thực thi “#code khác bên trong vòng lặp while"
sẽ bị bỏ qua và quay trở lại “#code bên trong vòng lặp while"
Ví dụ lệnh continnue trong Python
# Sử dụng continue trong for
for val in "string":
if val == "i":
continue
print(val)
print("Kết thúc!")
Code này giống hệt bên trên, chỉ thay lệnh break bằng continue. Tại đây, khi lặp chuỗi “string” đến chữ cái “i” thì sẽ bỏ qua lệnh in biến print(val) và quay trở lại lệnh if val==”i”:, ta có kết quả:
s
t
r
n
g
Kết thúc!
bien = 10
while bien > 0:
bien = bien -1
if bien == 5:
continue
print ('Giá trị biến hiện tại là: ', bien)
print ("OK!")
Nếu bien = 5 thì bỏ qua và thực hiện lần lặp tiếp theo, kết quả là:
Giá trị biến hiện tại là: 9
Giá trị biến hiện tại là: 8
Giá trị biến hiện tại là: 7
Giá trị biến hiện tại là: 6
Giá trị biến hiện tại là: 4
Giá trị biến hiện tại là: 3
Giá trị biến hiện tại là: 2
Giá trị biến hiện tại là: 1
Giá trị biến hiện tại là: 0
OK!
Trong phần sau chúng ta sẽ tìm hiểu về lệnh pass và các kỹ thuật lặp trong Python