Lệnh break và continue trong Python

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:

Sơ đồ lệnh break trong Python

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

Ví dụ 1:

#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!

Ví dụ 2:

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.

Cấu trúc của continue:

continue

Sơ đồ lệnh continue trong Python:

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

Ví dụ 3:

# 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!

Ví dụ 4:

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, các bạn theo dõi nhé!

Bài tập: Hơn 100 bài tập Python có lời giải (code mẫu)

Bài tiếp: Lệnh pass trong python

Bài trước: Vòng lặp while trong Python

Thứ Bảy, 18/11/2017 10:28
52 👨 4.080