Chúng ta có thể sử dụng ngắt không có vòng lặp trong Python không?

Trong Python, từ khóa

0
1
2
3
Loop exited
4 khiến chương trình ngừng chạy mã trong một vòng lặp và bắt đầu quay lại ở đầu vòng lặp. Nhớ từ khóa break khiến chương trình thoát khỏi một vòng lặp.
0
1
2
3
Loop exited
4 cũng tương tự, nhưng
0
1
2
3
Loop exited
4 khiến chương trình dừng bước lặp hiện tại của vòng lặp và bắt đầu bước lặp tiếp theo ở đầu vòng lặp

Giả sử chúng ta có một dãy số nguyên. Chúng ta phải xử lý từng phần tử chuỗi một. Nếu chúng tôi gặp phải "3" thì quá trình xử lý phải dừng lại. Chúng ta có thể sử dụng vòng lặp for để lặp và câu lệnh break với điều kiện if để thực hiện điều này

t_ints = (1, 2, 3, 4, 5)

for i in t_ints:
    if i == 3:
        break
    print(f'Processing {i}')

print("Done")

đầu ra

Chúng ta có thể sử dụng ngắt không có vòng lặp trong Python không?
Tuyên bố ngắt Python với for Loop


2. câu lệnh break với vòng lặp while

count = 10

while count > 0:
    print(count)
    if count == 5:
        break
    count -= 1

đầu ra

Chúng ta có thể sử dụng ngắt không có vòng lặp trong Python không?
Tuyên bố ngắt Python với vòng lặp while


3. câu lệnh break với một vòng lặp lồng nhau

Dưới đây là một ví dụ về lệnh break trong vòng lặp lồng nhau

list_of_tuples = [(1, 2), (3, 4), (5, 6)]

for t in list_of_tuples:
    for i in t:
        if i == 3:
            break
        print(f'Processing {i}')

đầu ra

Chúng ta có thể sử dụng ngắt không có vòng lặp trong Python không?
Câu lệnh ngắt Python Vòng lặp lồng nhau

Tại sao Python không hỗ trợ câu lệnh ngắt có nhãn?

Nhiều ngôn ngữ lập trình phổ biến hỗ trợ câu lệnh ngắt có nhãn. Nó chủ yếu được sử dụng để thoát ra khỏi vòng lặp bên ngoài trong trường hợp các vòng lặp lồng nhau. Tuy nhiên, Python không hỗ trợ câu lệnh ngắt có nhãn

PEP 3136 đã được nâng cấp để thêm hỗ trợ nhãn cho câu lệnh ngắt. Tuy nhiên, nó đã bị từ chối vì nó sẽ tạo thêm sự phức tạp không cần thiết cho ngôn ngữ. Có một giải pháp thay thế tốt hơn cho trường hợp này – di chuyển mã tới một hàm và thêm câu lệnh trả về

Câu lệnh break có thể được sử dụng cho nhiều mục đích khác nhau bên trong bất kỳ vòng lặp nào trong Python. Một số cách sử dụng câu lệnh ngắt được hiển thị trong phần sau của hướng dẫn này bằng các ví dụ khác nhau

Ví dụ 1. Chấm dứt vòng lặp vô hạn dựa trên số ngẫu nhiên

Trong ví dụ sau, một số nguyên ngẫu nhiên sẽ được tạo trong vòng lặp while vô hạn. Khi giá trị ngẫu nhiên mới tạo lớn hơn 75 hoặc bằng 99 thì câu lệnh break sẽ được thực hiện và kết thúc vòng lặp nếu không vòng lặp sẽ tiếp tục cho các giá trị khác

#. /usr/bin/env python3
# nhập mô-đun randint
từ ngẫu nhiên nhập ngẫu nhiên

# Định nghĩa vòng lặp while vô tận
trong khi(Đúng) .

  # Tạo số ngẫu nhiên từ 10 đến 99
  số = số hạng (10,99)

  # In số hiện được tạo
  in("Số mới tạo là %s" % number)

  # Chấm dứt vòng lặp nếu số lớn hơn 75
  nếu ( số > 75 ):
    in("Chúc bạn may mắn lần sau")
    nghỉ

  # Kết thúc vòng lặp nếu số đó bằng 99
  elif( số == 99):
    in("Bingo. , Bạn là người chiến thắng")
    nghỉ

  # Tiếp tục vòng lặp
  khác .
    in("Bạn có thể thử vào lúc khác")

đầu ra

Đầu ra sau sẽ xuất hiện sau khi chạy tập lệnh

Chúng ta có thể sử dụng ngắt không có vòng lặp trong Python không?

Ví dụ-2. Dừng lặp lại danh sách dựa trên một giá trị cụ thể

Tập lệnh sau sẽ đọc các giá trị từ biến danh sách có tên languages ​​bằng cách sử dụng vòng lặp for. Khi điều kiện if bên trong vòng lặp trở thành true thì vòng lặp sẽ kết thúc trước khi đọc tất cả các mục cho câu lệnh break

#. /usr/bin/env python3
# Khai báo danh sách ngôn ngữ
ngôn ngữ = ['Bash','PHP','Java','Python', 'C#', 'C++']

# In danh sách cho đến khi câu lệnh break được thực hiện
print('Danh sách các ngôn ngữ khác nhau. ')

# Lặp lại danh sách
cho tên bằng ngôn ngữ.

  # In mục danh sách hiện tại
  chữ in( tên )

  # Kiểm tra điều kiện để thoát khỏi vòng lặp
  if ( tên == 'Python'):
    nghỉ

# In thông báo kết thúc vòng lặp
in('Đã chấm dứt khỏi vòng lặp')

đầu ra

Đầu ra sau sẽ xuất hiện sau khi chạy tập lệnh

Chúng ta có thể sử dụng ngắt không có vòng lặp trong Python không?

Ví dụ-3. Đọc ba mục cụ thể từ một từ điển

Ví dụ sau đây cho thấy cách bạn chỉ có thể đọc ba mục cụ thể từ một từ điển bằng cách sử dụng câu lệnh ngắt và vòng lặp for. Một từ điển gồm sáu mục được xác định trong tập lệnh trong đó khóa chứa tên của một học sinh và giá trị chứa vị trí bằng khen của học sinh đó. Vòng lặp for được sử dụng để đọc các giá trị của từ điển và lưu trữ tên của những sinh viên đó trong danh sách có vị trí bằng khen nằm trong khoảng từ 1 đến 3. Vòng lặp sẽ kết thúc sau khi thêm ba mục vào danh sách bằng cách sử dụng câu lệnh ngắt

#. /usr/bin/env python3
# Xác định danh sách để lưu trữ tên của ba người đầu tiên
topList = ['','','']

# Đặt giá trị bộ đếm để kết thúc vòng lặp
bộ đếm = 0

# Định nghĩa từ điển sáu yếu tố
Danh sách khen thưởng = {'Mohammed' . 1, 'Mila Rahman' . 5, 'Sakib Al Hasan' . 3, 'Brian Lara' . 6,
'Sachin Tendulkar' . 2, 'Alif Hossain' . 4 }

# Lặp lại các giá trị của từ điển để lấy tên của ba người có công đầu tiên
cho tên_sinh viên trong danh sách khen thưởng.

  # Đọc vị trí xứng đáng
  khen_pos = Danh sách khen [ student_name ]

  # Lưu trữ giá trị chỉ mục trong danh sách nếu vị trí nằm trong khoảng từ 1 đến 3 và bộ đếm bằng 1
  nếu( merit_pos < 4):
    topList [ merit_pos- 1] = student_name
    bộ đếm = bộ đếm + 1

  # Kết thúc vòng lặp nếu giá trị bộ đếm là 3
  nếu ( bộ đếm == 3):
    nghỉ

# Đọc và in các giá trị của danh sách dựa trên vị trí
cho n trong phạm vi(0,3):
  in("%s đang ở vị trí %s" %(topList[n],n+1))

đầu ra

Đầu ra sau sẽ xuất hiện sau khi chạy tập lệnh

Chúng ta có thể sử dụng ngắt không có vòng lặp trong Python không?

Sử dụng câu lệnh continue

Câu lệnh continue không kết thúc vòng lặp như câu lệnh break. Nó chuyển điều khiển chương trình ở đầu vòng lặp mà không thực hiện một số câu lệnh cụ thể. Một số cách sử dụng câu lệnh continue được hiển thị trong phần sau của hướng dẫn này bằng các ví dụ khác nhau

Ví dụ-4. In các giá trị đó từ danh sách chia hết cho 3 và 5

Đoạn script sau sẽ đọc danh sách các số bằng vòng lặp for và in các số đó từ danh sách chia hết cho 3 và 5 bằng cách sử dụng câu lệnh if và continue

#. /usr/bin/env python3
# Khai báo một danh sách các số
số = [5, 10, 11, 15, 25,30,46, 45, 50]

# In tin nhắn
in('Số chia hết cho 3 và 5. ')

# Lặp lại danh sách
cho n trong số.

  # Kiểm tra điều kiện để chạy câu lệnh continue
  nếu ( n % 3 != 0 hoặc n % 5 != 0) .
    tiếp tục

  # In ra các số chia hết cho 3 và 5
  khác .
    in( n )

đầu ra

Đầu ra sau sẽ xuất hiện sau khi chạy tập lệnh

Chúng ta có thể sử dụng ngắt không có vòng lặp trong Python không?

Ví dụ-5. In các giá trị cụ thể từ một từ điển

Một từ điển gồm năm người được xác định trong tập lệnh trong đó khóa chứa tên của người đó và giá trị của mỗi khóa chứa giá trị 'Hiện tại' hoặc 'Vắng mặt'. Tập lệnh sau sẽ in tên của những người trong từ điển có chứa giá trị, 'Hiện tại'

#. /usr/bin/env python3
# Định nghĩa từ điển 5 người
persons = {'Mr. Micheal' . 'Món quà', 'Mr. Robin' . 'Vắng mặt', 'Bà. Ella' . 'Vắng mặt',
'Cô Lara' . 'Món quà', 'Mr. Hossain' . 'Món quà' }

# In tin nhắn
in('Những người sau đây có mặt trong cuộc họp. ')

  # Lặp lại từ điển
  cho tên người.
    # Kiểm tra điều kiện để chạy câu lệnh continue
    nếu ( người [name] == 'Absent'):
    tiếp tục
    # In tên người
    khác .
    in( tên )

đầu ra

Đầu ra sau sẽ xuất hiện sau khi chạy tập lệnh

Chúng ta có thể sử dụng ngắt không có vòng lặp trong Python không?

Phần kết luận

Sự khác biệt giữa câu lệnh break và continue trong một vòng lặp được giải thích bằng cách sử dụng các ví dụ khác nhau trong hướng dẫn này. Nó sẽ giúp người đọc biết cách sử dụng đúng các câu lệnh này trong vòng lặp

Break chỉ được sử dụng cho các vòng lặp?

Câu lệnh break không được sử dụng trong các câu lệnh đưa ra quyết định. Nó chỉ được sử dụng trong các vòng lặp , khi bạn muốn buộc kết thúc vòng lặp và tiếp tục thực hiện từ câu lệnh sau vòng lặp.

Break có phải là một vòng lặp trong Python không?

'Break' trong Python là câu lệnh điều khiển vòng lặp . Nó được sử dụng để kiểm soát trình tự của vòng lặp. Giả sử bạn muốn kết thúc một vòng lặp và chuyển sang mã tiếp theo sau vòng lặp; . Một tình huống điển hình của việc sử dụng Break trong Python là khi một điều kiện bên ngoài kích hoạt việc kết thúc vòng lặp.

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.

Tại sao tôi không thể sử dụng break trong Python?

Câu lệnh break trong Python dùng để thoát khỏi vòng lặp hiện tại. Chúng ta không thể sử dụng câu lệnh break bên ngoài vòng lặp, nó sẽ báo lỗi “SyntaxError. 'phá vỡ' vòng lặp bên ngoài“ . Chúng ta có thể sử dụng câu lệnh break với vòng lặp for và vòng lặp while. Nếu câu lệnh break xuất hiện trong một vòng lặp lồng nhau, nó sẽ kết thúc vòng lặp bên trong.