Phá vỡ vòng lặp bên ngoài của Python?
Show
Sử dụng breakCâu lệnh
Sử dụng continue
break và continue được hình dungĐiều gì xảy ra khi chúng tôi chạy mã từ tệp Python này?
Kết quảHãy xem bạn có đoán được kết quả không trước khi mở rộng phần này
Sử dụng break và continue trong các vòng lặp lồng nhauHãy nhớ rằng,
Kiểm soát vòng lặp trong # Python file names.py names = ["Jimmy", "Rose", "Max", "Nina", "Phillip"] for name in names: if len(name) != 4: continue print(f"Hello, {name}") if name == "Nina": break print("Done!") 2 vòng lặpBạn cũng có thể sử dụng 2 vòng lặp. Một tình huống phổ biến là chạy một vòng lặp mãi mãi cho đến khi một điều kiện nhất định được đáp ứng
Hãy cẩn thận rằng điều kiện của bạn cuối cùng sẽ được đáp ứng, nếu không chương trình của bạn sẽ bị mắc kẹt trong một vòng lặp vô hạn. Để sử dụng sản xuất, tốt hơn là sử dụng lập trình không đồng bộ Vòng lặp trong lập trình cho phép chúng ta thực thi liên tục một tập lệnh/khối mã lệnh cho đến khi thỏa mãn một điều kiện nào đó Chúng ta cũng có thể sử dụng các vòng lặp để lặp lại một tập hợp dữ liệu và thực hiện thao tác tương tự trên từng mục trong tập dữ liệu ________số 8_______Trên đây là vòng lặp Python 2 lặp qua danh sách tên và in tất cả tênTrong trường hợp chúng ta muốn dừng lặp lại trước khi đến mục cuối cùng hoặc trước khi một điều kiện nhất định được đáp ứng, chúng ta có thể sử dụng câu lệnh 3. Câu lệnh 3 sẽ có điều kiện riêng của nó – điều này cho nó biết khi nào thì "ngắt" vòng lặpTrong bài viết này, trước tiên chúng ta sẽ xem cách sử dụng câu lệnh 3 trong các vòng lặp 2 và 7. Sau đó, chúng ta sẽ xem xét một số phương pháp mà chúng ta có thể sử dụng để phá vỡ các vòng lặp lồng nhau trong PythonLàm thế nào để bạn viết một tuyên bố names = ["John", "Jane", "Doe"] for i in names: print(i) if i == "Jane": break3 bằng Python?Bạn xác định câu lệnh 3 trong vòng lặp mà bạn muốn nó kết thúc. Trong phần này, chúng ta sẽ xem cách sử dụng câu lệnh 3 trong các vòng lặp 2 và 7Cách sử dụng câu lệnh names = ["John", "Jane", "Doe"] for i in names: print(i) if i == "Jane": break3 trong vòng lặp names = ["John", "Jane", "Doe"] for i in names: print(i) if i == "Jane": break2Đây là một ví dụ
Trong đoạn mã trên, chúng tôi đang in một danh sách tên
Sau đó, chúng tôi đã tạo một điều kiện mới để kiểm tra khi biến 5 có tên bằng "Jane". Khi điều kiện đó được đáp ứng, vòng lặp được yêu cầu dừng lại. Nó dừng vì câu lệnh 3 dừng vòng lặp khi 5 là "Jane"
Điều này cũng giống như nói. "in tất cả các tên và dừng lại khi bạn đến chỗ Jane". Vì vậy, trong bảng điều khiển của chúng tôi, trong số ba tên — 8 – chỉ có "John" và "Jane" được inChúng ta cũng có thể làm điều này với những con số
Đoạn mã trên in ra một dãy số từ 0 đến 9. Nhưng chúng ta có thể ngăn vòng lặp này in tất cả các số – thay vào đó chúng ta có thể dừng ở một số cụ thể. Đây là cách
Bây giờ các vòng dừng lại ở 5. Vì vậy, chúng tôi sẽ chỉ thấy 0, 1, 2, 3, 4 và 5 trong bảng điều khiển Cách sử dụng câu lệnh names = ["John", "Jane", "Doe"] for i in names: print(i) if i == "Jane": break3 trong vòng lặp names = ["John", "Jane", "Doe"] for i in names: print(i) if i == "Jane": break7Ví dụ trong phần này sẽ tương tự như ví dụ của phần trước. Thay vào đó, chúng tôi sẽ sử dụng vòng lặp 7
Đoạn mã trên in ra một dãy số từ 0 đến 9. Chúng tôi sẽ sử dụng 3 để ngừng in số khi chúng tôi đến 5
Giống như chúng ta đã làm trong phần trước, chúng ta đã tạo một điều kiện mới. 3 và khi điều kiện này được đáp ứng, vòng lặp sẽ kết thúc thay vì in tất cả đến 9Cách sử dụng câu lệnh names = ["John", "Jane", "Doe"] for i in names: print(i) if i == "Jane": break3 trong một vòng lặp lồng nhauTrong phần này, chúng ta sẽ xem cách sử dụng câu lệnh 3 trong các vòng lặp lồng nhauĐây là một vòng lặp lồng nhau trông như thế nào
Các vòng lặp lồng nhau thường có thể gây nhầm lẫn cho người mới bắt đầu. Vì vậy, nếu bạn đang thắc mắc làm thế nào chúng tôi có kết quả ở trên (được nhận xét trong mã), thì đây là giải thích ngắn gọn 6 sẽ cho chúng ta dãy số từ 0 đến 3Chỉ in 7 sẽ cho chúng ta 0, 1, 2, 3. Nhưng chúng tôi đang lồng một dãy số khác trong vòng lặp. 8Những gì vòng lặp thứ hai thực hiện là nhân đôi mỗi số của 9 với số lượng số nguyên mà nó có (trong phạm vi 0). Chúng ta có bốn số trong phạm vi 0 – 0, 1, 2, 3Vì vậy, đối với phạm vi 9, số đầu tiên là 0 và nó sẽ xuất hiện bốn lần. Mỗi lần nó xuất hiện, nó lấy một số từ dãy 0; . 0 và 0, 0 và 1, 0 và 2, 0 và 3. Điều này áp dụng cho các số khác trong phạm vi 9Nếu bạn vẫn thấy điều này khó hiểu, thì hãy thử tự chạy mã. Hãy thử thay đổi phạm vi của từng vòng lặp để xem điều gì xảy ra với đầu ra Hãy phá vỡ vòng lặp bằng cách sử dụng câu lệnh 3
Mặc dù vòng lặp trong ví dụ trên dường như đã dừng, nhưng khi xem xét kỹ hơn kết quả đầu ra (đã nhận xét ở trên), bạn sẽ nhận ra rằng vòng lặp bên ngoài vẫn đang in ra tất cả các giá trị của nó, điều không như ý muốn Vì vậy, chỉ sử dụng câu lệnh 3 không thực sự phá vỡ một vòng lặp lồng nhau. Hãy xem một số cách giải quyết để đạt được kết quả mong muốn của chúng tôiSử dụng biến Boolean 0Trong ví dụ trên, chúng tôi đang sử dụng một biến boolean có giá trị ban đầu là 7. Khi vòng lặp đến điểm dừng đã định, chúng tôi đặt giá trị boolean này là 8, nhưng đó không phải là tất cả. Chúng tôi kiểm tra khi biến là 8 và sau đó gán câu lệnh 3Sử dụng Tuyên bố Break hai lần 1Trong ví dụ này, chúng tôi xác định hai câu lệnh 1 – cả hai đều trả về câu lệnh 3 để buộc vòng lặp bị ngắtMặc dù các giải pháp thay thế này có thể đã kết thúc vòng lặp tại một trường hợp nhất định, nhưng bạn sẽ nhận thấy rằng giá trị của vòng lặp bên trong vẫn giữ nguyên mỗi khi vòng lặp bị ngắt Điều này không có nghĩa là các vòng lặp lồng nhau là xấu. Nhưng hãy chắc chắn rằng bạn thực sự cần chúng trước khi thực hiện chúng trong logic của bạn Phần kết luậnTrong bài viết này, chúng ta đã biết cách sử dụng câu lệnh 3 để kết thúc một vòng lặp trước khi điều kiện ban đầu của vòng lặp được đáp ứng hoặc trước khi hoàn tất việc lặp lại các mục trong tập dữ liệuChúng tôi đã thấy một số ví dụ về cách bạn có thể sử dụng câu lệnh 3 trong cả hai vòng lặp 2 và 7Cuối cùng, chúng ta đã nói về các vòng lặp lồng nhau. Chúng tôi phát hiện ra rằng câu lệnh 3 không thực sự dừng vòng lặp. Điều này khiến chúng ta thấy một số ví dụ về một số phương pháp mà chúng ta có thể sử dụng để phá vỡ một vòng lặp lồng nhau trong PythonMã hóa vui vẻ QUẢNG CÁO QUẢNG CÁO QUẢNG CÁO QUẢNG CÁO Tiểu sử của tác giả này có thể được tìm thấy trong các bài viết của ông Nếu bạn đọc đến đây, hãy tweet cho tác giả để cho họ thấy bạn quan tâm. Tweet một lời cảm ơn Học cách viết mã miễn phí. Chương trình giảng dạy mã nguồn mở của freeCodeCamp đã giúp hơn 40.000 người có được việc làm với tư cách là nhà phát triển. Bắt đầu Liệu Break Break ra khỏi vòng lặp bên ngoài?BREAK sẽ chỉ thoát ra khỏi vòng lặp mà nó được gọi . Như một giải pháp thay thế, bạn có thể sử dụng một biến cờ cùng với BREAK để thoát ra khỏi các vòng lặp lồng nhau.
Break có thoát ra khỏi tất cả các vòng lặp trong Python không?Bạn có thể sử dụng break trong Python trong tất cả các vòng lặp. while, for và lồng nhau . Nếu bạn đang sử dụng nó trong các vòng lặp lồng nhau, nó sẽ kết thúc vòng lặp trong cùng nơi bạn đã sử dụng nó và quyền điều khiển chương trình sẽ chuyển sang vòng lặp bên ngoài.
Phá vỡ chỉ phá vỡ vòng lặp bên trong Python?Sử dụng break và continue trong các vòng lặp lồng nhau. break trong vòng lặp bên trong chỉ ngắt ra khỏi vòng lặp bên trong . Vòng lặp bên ngoài tiếp tục chạy.
Phá vỡ có giúp bạn thoát khỏi tất cả các vòng lặp không?Sử dụng ngắt trong vòng lặp lồng nhau
. Do đó, nếu ngắt được đặt ở vòng lặp bên trong, vòng lặp bên ngoài vẫn tiếp tục. Tuy nhiên, nếu ngắt được đặt ở vòng lặp bên ngoài, tất cả các vòng lặp sẽ dừng lại . |