Sự khác biệt giữa break và exit() trong Python là gì?

Bạn có thể phải đối mặt với một tình huống trong đó bạn cần phải thoát khỏi một vòng lặp hoàn toàn khi một điều kiện bên ngoài được kích hoạt hoặc cũng có thể có một tình huống khi bạn muốn bỏ qua một phần của vòng lặp và bắt đầu thực hiện tiếp theo

Show

    Python cung cấp các câu lệnh break và continue để xử lý các tình huống như vậy và để kiểm soát tốt vòng lặp của bạn

    Hướng dẫn này sẽ thảo luận về các câu lệnh break, continue và pass có sẵn trong Python

    Câu lệnh break trong Python kết thúc vòng lặp hiện tại và tiếp tục thực thi ở câu lệnh tiếp theo, giống như câu lệnh break truyền thống trong C

    Việc sử dụng ngắt phổ biến nhất là khi một số điều kiện bên ngoài được kích hoạt yêu cầu phải nhanh chóng thoát khỏi một vòng lặp. Câu lệnh break có thể được sử dụng trong cả vòng lặp while và for

    Ví dụ

    #!/usr/bin/python
    
    for letter in 'Python':     # First Example
       if letter == 'h':
          break
       print 'Current Letter :', letter
      
    var = 10                    # Second Example
    while var > 0:              
       print 'Current variable value :', var
       var = var -1
       if var == 5:
          break
    
    print "Good bye!"
    

    Điều này sẽ tạo ra kết quả sau

    Current Letter : P
    Current Letter : y
    Current Letter : t
    Current variable value : 10
    Current variable value : 9
    Current variable value : 8
    Current variable value : 7
    Current variable value : 6
    Good bye!
    

    Câu lệnh continue trong Python trả điều khiển về đầu vòng lặp while. Câu lệnh continue loại bỏ tất cả các câu lệnh còn lại trong lần lặp hiện tại của vòng lặp và di chuyển điều khiển trở lại đầu vòng lặp

    Câu lệnh continue có thể được sử dụng trong cả vòng lặp while và for

    Ví dụ

    #!/usr/bin/python
    
    for letter in 'Python':     # First Example
       if letter == 'h':
          continue
       print 'Current Letter :', letter
    
    var = 10                    # Second Example
    while var > 0:              
       var = var -1
       if var == 5:
          continue
       print 'Current variable value :', var
    print "Good bye!"
    

    Điều này sẽ tạo ra kết quả sau

    Current Letter : P
    Current Letter : y
    Current Letter : t
    Current Letter : o
    Current Letter : n
    Current variable value : 10
    Current variable value : 9
    Current variable value : 8
    Current variable value : 7
    Current variable value : 6
    Current variable value : 4
    Current variable value : 3
    Current variable value : 2
    Current variable value : 1
    Good bye!
    

    Python hỗ trợ để có một câu lệnh khác được liên kết với một câu lệnh vòng lặp

    • Nếu câu lệnh khác được sử dụng với vòng lặp for, thì câu lệnh khác được thực hiện khi vòng lặp chạy hết việc lặp lại danh sách

    • Nếu câu lệnh khác được sử dụng với vòng lặp while, câu lệnh khác được thực thi khi điều kiện trở thành sai

    Ví dụ

    Ví dụ sau minh họa sự kết hợp của câu lệnh other với câu lệnh for tìm kiếm các số nguyên tố từ 10 đến 20

    #!/usr/bin/python
    
    for num in range(10,20):  #to iterate between 10 to 20
       for i in range(2,num): #to iterate on the factors of the number
          if num%i == 0:      #to determine the first factor
             j=num/i #to calculate the second factor
             print '%d equals %d * %d' % (num,i,j)
             break #to move to the next number, the #first FOR
       else:        # else part of the loop
          print num, 'is a prime number'
    

    Điều này sẽ tạo ra kết quả sau

    10 equals 2 * 5
    11 is a prime number
    12 equals 2 * 6
    13 is a prime number
    14 equals 2 * 7
    15 equals 3 * 5
    16 equals 2 * 8
    17 is a prime number
    18 equals 2 * 9
    19 is a prime number
    

    Cách tương tự bạn có thể sử dụng câu lệnh khác với vòng lặp while

    Câu lệnh pass trong Python được sử dụng khi một câu lệnh được yêu cầu về mặt cú pháp nhưng bạn không muốn bất kỳ lệnh hoặc mã nào thực thi

    Câu lệnh vượt qua là một thao tác null; . Thẻ cũng hữu ích ở những nơi mà mã của bạn cuối cùng sẽ đi, nhưng chưa được viết (e. g. , trong sơ khai chẳng hạn)

    Ví dụ

    #!/usr/bin/python
    
    for letter in 'Python': 
       if letter == 'h':
          pass
          print 'This is pass block'
       print 'Current Letter :', letter
    
    print "Good bye!"
    

    Điều này sẽ tạo ra kết quả sau

    Current Letter : P
    Current Letter : y
    Current Letter : t
    This is pass block
    Current Letter : h
    Current Letter : o
    Current Letter : n
    Good bye!
    

    Đoạn mã trước không thực thi bất kỳ câu lệnh hoặc mã nào nếu giá trị của chữ cái là 'h'. Câu lệnh vượt qua rất hữu ích khi bạn đã tạo một khối mã nhưng nó không còn cần thiết nữa

    Sau đó, bạn có thể xóa các câu lệnh bên trong khối nhưng để khối đó ở lại với câu lệnh vượt qua để nó không can thiệp vào các phần khác của mã

    1. Câu lệnh break thoát ra khỏi khối cơ bản hiện tại và tiếp tục thực thi ở dòng tiếp theo bên ngoài khối cơ bản. Hàm exit() gọi API hệ điều hành dừng thực thi quy trình. 2. Tham số trạng thái trong exit() giống như giá trị trả về mà bạn sẽ trả về từ main(). Đó là giá trị trạng thái chương trình cuối cùng có thể được kiểm tra bởi các tập lệnh shell để xác định xem chương trình đã báo cáo thành công hay thất bại khi thực thi. Hầu hết các chương trình sử dụng 0 nghĩa là thành công và 1 nghĩa là thất bại. Nhưng bạn được phép thay đổi ý nghĩa và giá trị của nó theo ý muốn