Break có hợp lệ trong Python không?

Khi bạn viết một số mã cho một chương trình, mục đích chính là thực thi mọi dòng mã. Nhưng có thể có một tình huống mà bạn có thể muốn làm gián đoạn dòng chảy bình thường của chương trình. Điều này có thể xảy ra khi bạn đang thực hiện một hoặc một thời gian

Break trong Python là gì?

Trong Python, câu lệnh break được sử dụng để thay đổi hoạt động bình thường của một vòng lặp. Trong các vòng lặp, một tập hợp các câu lệnh được thực hiện lặp đi lặp lại cho đến khi thỏa mãn điều kiện kiểm tra. Nhưng trong một số trường hợp, chúng ta cần kết thúc bước lặp hiện tại của vòng lặp mà chưa đạt điều kiện

Các câu lệnh ngắt được sử dụng để loại bỏ điều khiển ra khỏi vòng lặp trong những trường hợp đó và tiếp tục thực hiện các câu lệnh tiếp theo bên ngoài vòng lặp

Python Break for Loop

Câu lệnh break được sử dụng để thoát khỏi vòng lặp hiện tại. Nó có thể được sử dụng cho cả vòng lặp for và while. Nếu câu lệnh break được sử dụng bên trong vòng lặp lồng nhau, vòng lặp trong cùng sẽ bị kết thúc. Sau đó, các câu lệnh của vòng lặp bên ngoài được thực hiện

Câu lệnh break thường được sử dụng cùng với câu lệnh if để khi điều kiện if đúng thì câu lệnh break được thực thi

Sơ đồ quy trình ngắt Python

Cú pháp của hàm ngắt Python

Cú pháp của câu lệnh break trong Python là

break

Ví dụ về câu lệnh Break Python với vòng lặp for

car = ["Maruti","Hundai","Honda","Polo","Tata"]
print["Car Name from array without break keyword"];
for car_name in car:
   print["Car Name : " + car_name]
   print["Break Keyword applied after 'Polo' Car Name"];
for car_name in car:
      if car_name == 'Polo':
       break
print["Car Name : " + car_name]

ĐẦU RA

Car Name from array without break keyword
Car Name : Maruti
Car Name : Hundai
Car Name : Honda
Car Name : Polo
Car Name : Tata
Break Keyword applied after 'Polo' Car Name
Car Name : Maruti
Car Name : Hundai
Car Name : Honda

Giải trình

Trong chương trình trên, một danh sách 'ô tô' được khởi tạo với các tên công ty ô tô khác nhau. Sau đó, một phương thức print[] in ra chuỗi "Tên xe từ mảng không có từ khóa ngắt"

Ở dòng tiếp theo, một vòng lặp for được thực thi để lặp lại các phần tử của biến car. Một biến có tên car_name được sử dụng để lặp lại. Trong vòng lặp, phương thức print[] in ra tên xe sử dụng biến car_name

Trong dòng tiếp theo, một câu lệnh print[] khác in ra chuỗi "Break Keyword đã áp dụng sau 'Polo' Car Name"

Một vòng lặp for khác được thực thi để lặp qua các phần tử của biến car. Điều kiện if được sử dụng để kiểm tra tên của ô tô. Khi giá trị biến là Polo, câu lệnh break được thực thi

Do đó, chúng tôi đã nhận được đầu ra của tất cả các tên ô tô cho đến khi gặp polo.  

Ví dụ về câu lệnh ngắt Python với vòng lặp while

# Initializing a variable 'i'
i = 1
# Using while loop
while i < 6:
  if [i ==4]:
    break
  print["value of i: ",i]  
  i += 1

ĐẦU RA

value of i:  1
value of i:  2
value of i:  3

Giải trình

Trong đoạn mã trên, trước tiên chúng ta đã khởi tạo một biến 'i' với giá trị 1. Vòng lặp while sẽ in giá trị của  i cho đến khi đạt đến 6. nhưng chúng tôi đã sử dụng câu lệnh ngắt cho điều kiện nếu giá trị của 'i' trở thành 4 thì thoát khỏi thân vòng lặp

Do đó, chỉ các giá trị cho đến 3 được in

Phần kết luận

Như đã hiểu từ bài báo, câu lệnh ngắt kết thúc vòng lặp mà nó hiện đang ở. Các câu lệnh bên ngoài vòng lặp sẽ chạy bình thường. Vì vậy, hãy đảm bảo rằng các dòng mã quan trọng nhất được thực thi và không bị kết thúc sớm bởi điều kiện ngắt. Các câu lệnh như tăng vòng lặp sử dụng một biến phải được mã hóa trước câu lệnh ngắt

Python — linh hoạt — là giải pháp tốt nhất để tự động hóa và thực hiện các tác vụ lặp đi lặp lại một cách hiệu quả

Trong Python [và cả các ngôn ngữ lập trình khác], khái niệm vòng lặp giúp lặp lại một danh sách, bộ dữ liệu, chuỗi, từ điển và tập hợp

Vòng lặp lặp qua một khối mã cho đến khi biểu thức kiểm tra sai, nhưng đôi khi chúng ta muốn kết thúc vòng lặp hiện tại hoặc thậm chí toàn bộ vòng lặp mà không cần kiểm tra biểu thức kiểm tra

Điều này có thể đạt được bằng cách sử dụng một số từ khóa có thể được sử dụng để thay đổi luồng hoặc thực thi các vòng lặp. Và trong Python, những từ khóa đó là - phá vỡ, tiếp tục, vượt qua. 💡

Và điều quan trọng là phải biết khi nào và làm thế nào để sử dụng các từ khóa này để kiểm soát luồng vòng lặp của bạn một cách chính xác

Do đó, trong bài viết này, tôi sẽ thảo luận [với các ví dụ] khi nào-tại sao-làm thế nào để ngắt, tiếp tục và vượt qua trong Python

Khái niệm đằng sau những từ khóa này giống nhau bất kể ngôn ngữ lập trình

Bắt đầu nào

câu lệnh ngắt trong Python

Câu lệnh break trong Python kết thúc vòng lặp chứa nó

Ví dụ,

for num in range[0,10]:
if num == 5:
break
print[f'Iteration: {num}']

vòng lặp for ở trên tạo đầu ra dưới dạng,

Hình ảnh của tác giả

Ở đây chúng tôi đã thêm câu lệnh if kiểm tra một điều kiện và khi điều kiện này trở thành True, luồng chương trình sẽ đi vào bên trong câu lệnh if và thực thi câu lệnh break

Do đó, vòng lặp for được thực thi cho đến khi điều kiện num == 5 trở thành True và khi điều kiện trở thành True, câu lệnh break được thực thi để kết thúc luồng của vòng lặp for

Đi trước một bước, hãy thêm một vòng lặp for nữa, bên ngoài vòng lặp for hiện có, như bên dưới

for k in range[0,5]:
print[f'Outer For Loop Iteration: {k}']
for num in range[0,10]:
if num == 5:
break
print[f'--Inner For Loop Iteration: {num}']

Theo định nghĩa, câu lệnh break sẽ kết thúc vòng lặp for chứa nó khi điều kiện trở thành True

câu lệnh break trong vòng lặp for lồng nhau. Hình ảnh của tác giả

Như chúng ta có thể thấy trong hình trên, với mỗi lần lặp của vòng lặp for bên ngoài, luồng của vòng lặp bên trong sẽ ngắt sau 5 lần lặp theo điều kiện num == 5

Như vậy, nếu câu lệnh break nằm trong vòng lặp lồng nhau [vòng lặp bên trong vòng lặp khác] thì câu lệnh break sẽ kết thúc vòng lặp trong cùng. 🎯

Một ví dụ trong thế giới thực sẽ là, mở khóa điện thoại thông minh của chúng tôi bằng cách sử dụng mật khẩu. Về mặt kỹ thuật, quy trình mở khóa điện thoại là một vòng lặp for và liên tục hỏi mật khẩu. khi nhập đúng mật khẩu, câu lệnh break được thực thi và vòng lặp for bị chấm dứt

Dưới đây là lời giải thích với mã,

Ví dụ thực tế về lệnh break trong Python. Hình ảnh của tác giả

Trong ví dụ trên, tôi coi Python là mật khẩu chính xác. Khi điều kiện

for k in range[0,5]:
print[f'Outer For Loop Iteration: {k}']
for num in range[0,10]:
if num == 5:
break
print[f'--Inner For Loop Iteration: {num}']
7 trở thành True, câu lệnh break được thực thi và vòng lặp for kết thúc

câu lệnh continue trong Python

Câu lệnh

for k in range[0,5]:
print[f'Outer For Loop Iteration: {k}']
for num in range[0,10]:
if num == 5:
break
print[f'--Inner For Loop Iteration: {num}']
8 được sử dụng để bỏ qua đoạn mã còn lại bên trong vòng lặp chỉ cho lần lặp hiện tại

ví dụ, hãy sử dụng câu lệnh continue thay vì câu lệnh break trong ví dụ trên

for num in range[0,10]:
if num == 5:
continue
print[f'Iteration: {num}']

Tiếp tục trong Python. Hình ảnh của tác giả

khi điều kiện num == 5 trở thành True, câu lệnh

for num in range[0,10]:
if num == 5:
continue
print[f'Iteration: {num}']
0 được thực thi. Theo định nghĩa của nó, mã còn lại trong vòng lặp chỉ bị bỏ qua cho lần lặp đó. Đó là lý do tại sao đầu ra ở trên thiếu
for num in range[0,10]:
if num == 5:
continue
print[f'Iteration: {num}']
1

Do đó, câu lệnh

for k in range[0,5]:
print[f'Outer For Loop Iteration: {k}']
for num in range[0,10]:
if num == 5:
break
print[f'--Inner For Loop Iteration: {num}']
8 hoạt động ngược lại với câu lệnh break, thay vì kết thúc vòng lặp, nó buộc phải thực hiện lần lặp tiếp theo của vòng lặp

vượt qua câu lệnh trong Python

Như tên gọi của nó, câu lệnh

for num in range[0,10]:
if num == 5:
continue
print[f'Iteration: {num}']
4 không làm gì cả

Nó được sử dụng khi một câu lệnh hoặc một điều kiện bắt buộc phải có trong chương trình nhưng chúng tôi không muốn bất kỳ lệnh hoặc mã nào thực thi

Ví dụ, thay thế break trong ví dụ trên bằng câu lệnh pass

for num in range[0,10]:
if num == 5:
pass
print[f'Iteration: {num}']

Vượt qua Python. Hình ảnh của tác giả

Như chúng ta thấy trong kết quả ở trên, câu lệnh

for num in range[0,10]:
if num == 5:
continue
print[f'Iteration: {num}']
5 thực sự không làm gì như vòng lặp for và tất cả các câu lệnh bên trong nó đều được thực thi

Câu lệnh

for num in range[0,10]:
if num == 5:
continue
print[f'Iteration: {num}']
5 thường được sử dụng trong khi tạo một phương thức mà chúng tôi không muốn sử dụng ngay bây giờ

Câu lệnh vượt qua được sử dụng làm trình giữ chỗ cho mã trong tương lai

Hầu hết thời gian, câu lệnh

for num in range[0,10]:
if num == 5:
continue
print[f'Iteration: {num}']
5 được thay thế bằng lệnh hoặc mã có ý nghĩa khác trong chương trình

Sự khác biệt giữa vượt qua và tiếp tục

Chắc chắn, có sự khác biệt đáng kể giữa vượt qua và tiếp tục và chúng không thể hoán đổi cho nhau. ✅

for num in range[0,10]:
if num == 5:
continue
print[f'Iteration: {num}']
0 buộc vòng lặp bắt đầu ở lần lặp tiếp theo trong khi
for num in range[0,10]:
if num == 5:
continue
print[f'Iteration: {num}']
5 có nghĩa là "không có mã nào để thực thi ở đây" và sẽ tiếp tục qua phần còn lại của thân vòng lặp

Dưới đây là giải thích nhanh về sự khác biệt này,

for num in range[0,5]:
pass
print[f'Iteration: {num}']
print["This statement is after 'pass'"]
continue
print["This statement is after 'continue'"]

Tiếp tục và Vượt qua Lập trình Python. Hình ảnh của tác giả

Ở kết quả trên, trong mỗi lần lặp của vòng lặp for, hai câu lệnh print đầu tiên luôn được thực thi mặc dù chúng nằm sau câu lệnh

for num in range[0,10]:
if num == 5:
continue
print[f'Iteration: {num}']
5. Điều đó có nghĩa là,
for num in range[0,10]:
if num == 5:
continue
print[f'Iteration: {num}']
4 không làm gì cả và dòng chảy của vòng lặp không bị gián đoạn

Tuy nhiên, câu lệnh in sau câu lệnh

for num in range[0,10]:
if num == 5:
continue
print[f'Iteration: {num}']
0 không được thực thi, vì từ khóa
for k in range[0,5]:
print[f'Outer For Loop Iteration: {k}']
for num in range[0,10]:
if num == 5:
break
print[f'--Inner For Loop Iteration: {num}']
8 buộc vòng lặp for bắt đầu lần lặp tiếp theo

Tóm lại, 🚀

Một ví dụ duy nhất sẽ khá hữu ích để hiểu cách vượt qua, tiếp tục và ngắt hoạt động trong Python

Cách sử dụng pass, continue và break trong Python. Ý chính của tác giả

vượt qua, tiếp tục và ngắt trong ví dụ Python. Hình ảnh của tác giả

Như bạn có thể thấy trong kết quả ở trên, mọi thứ trước và sau

for num in range[0,10]:
if num == 5:
continue
print[f'Iteration: {num}']
5 luôn được thực thi, cho biết từ khóa
for num in range[0,10]:
if num == 5:
continue
print[f'Iteration: {num}']
5 không làm gì cả

Ngoài ra, chỉ có dòng trước từ khóa

for num in range[0,10]:
if num == 5:
continue
print[f'Iteration: {num}']
0 được thực thi, cho biết rằng
for num in range[0,10]:
if num == 5:
continue
print[f'Iteration: {num}']
0 luôn buộc vòng lặp for bắt đầu lần lặp tiếp theo và không thực thi bất cứ điều gì sau từ khóa
for num in range[0,10]:
if num == 5:
continue
print[f'Iteration: {num}']
0 trong lần lặp hiện tại

Cuối cùng, dòng trước break được thực thi và luồng của vòng lặp for kết thúc ở lần lặp thứ 3. Điều này giải thích cách câu lệnh break được sử dụng để dừng quá trình

Tôi hy vọng bạn tìm thấy bài viết này thú vị và nó hữu ích cho bạn

Bây giờ bạn có thể trở thành Thành viên trung bình chỉ sau 1 phút bằng Liên kết của tôi. Khi bạn làm như vậy, tôi sẽ nhận được một phần nhỏ phí của bạn và Bạn sẽ có quyền truy cập không giới hạn 😎 vào tất cả các bài viết trên Phương tiện

Tại sao break không hoạt động trong Python?

câu lệnh ngắt không hoạt động và vòng lặp đang chạy vô tận. Câu trả lời cho câu hỏi của bạn là câu lệnh "break" đề cập đến vòng lặp for chứ không phải vòng lặp while .

Tôi có thể sử dụng cái gì thay vì ngắt trong Python?

câu lệnh continue trong Python . ví dụ, hãy sử dụng câu lệnh continue thay vì câu lệnh break trong ví dụ trên.

Việc ngắt trong Python có dừng tất cả các vòng lặp không?

Câu lệnh break trong Python ngay lập tức kết thúc một vòng lặp hoàn toàn .

Chủ Đề