Vòng lặp vô hạn trong python

Không giống như câu lệnh

i = 0

while i < 3:
    print(i)
    i += 1
# 0
# 1
# 2
2, truy xuất tuần tự các phần tử có thể lặp lại như
i = 0

while i < 3:
    print(i)
    i += 1
# 0
# 1
# 2
3,
i = 0

while i < 3:
    print(i)
    i += 1
# 0
# 1
# 2
1 lặp lại miễn là biểu thức điều kiện là
i = 0

while i < 3:
    print(i)
    i += 1
# 0
# 1
# 2
5

Bài viết này mô tả các nội dung sau

  • Cách sử dụng cơ bản của câu lệnh
    i = 0
    
    while i < 3:
        print(i)
        i += 1
    # 0
    # 1
    # 2
    
    1 trong Python
  • Chấm dứt vòng lặp.
    i = 0
    
    while i < 3:
        print(i)
        i += 1
    # 0
    # 1
    # 2
    
    7
  • Tiếp tục chu kỳ tiếp theo.
    i = 0
    
    while i < 3:
        print(i)
        i += 1
    # 0
    # 1
    # 2
    
    8
  • Thực hiện sau khi chấm dứt bình thường.
    i = 0
    
    while i < 3:
        print(i)
        i += 1
    # 0
    # 1
    # 2
    
    9
  • Vòng lặp vô hạn với câu lệnh
    i = 0
    
    while i < 3:
        print(i)
        i += 1
    # 0
    # 1
    # 2
    
    1
    • Chấm dứt với đầu vào bàn phím
  • Buộc chấm dứt

Xem bài viết sau để biết câu lệnh

i = 0

while i < 3:
    print(i)
    i += 1
# 0
# 1
# 2
2. Câu lệnh
i = 0

while i < 3:
    print(i)
    i += 1
# 0
# 1
# 2
2 phù hợp hơn khi bạn muốn lấy một phần tử chẳng hạn như
i = 0

while i < 3:
    print(i)
    i += 1
# 0
# 1
# 2
3 hoặc khi bạn chỉ muốn thực hiện một số lần nhất định

  • vòng lặp for trong Python (với phạm vi, liệt kê, zip, v.v. )

Thay vì sử dụng câu lệnh

i = 0

while i < 3:
    print(i)
    i += 1
# 0
# 1
# 2
1, vòng lặp vô hạn có thể được triển khai bằng cách sử dụng câu lệnh
i = 0

while i < 3:
    print(i)
    i += 1
# 0
# 1
# 2
2 và các chức năng của mô-đun itertools thư viện chuẩn. Vòng lặp vô hạn với bộ đếm, v.v. thường có thể được viết dễ dàng bằng cách sử dụng các chức năng của itertools

  • Trình lặp vô hạn trong Python (itertools. đếm, chu kỳ, lặp lại)

Liên kết được tài trợ

Cách sử dụng cơ bản của câu lệnh i = 0 while i < 3: print(i) i += 1 # 0 # 1 # 2 1 trong Python

Câu lệnh

i = 0

while i < 3:
    print(i)
    i += 1
# 0
# 1
# 2
1 trong Python được viết như sau

while expression:
    ... <do something>

Ví dụ cụ thể như sau

i = 0

while i < 3:
    print(i)
    i += 1
# 0
# 1
# 2

nguồn.

Bạn có thể chỉ định nhiều điều kiện cho phần

i = 0

while i < 3:
    print(i)
    if i == 1:
        print('!!BREAK!!')
        break
    i += 1
# 0
# 1
# !!BREAK!!
8 với
i = 0

while i < 3:
    print(i)
    if i == 1:
        print('!!BREAK!!')
        break
    i += 1
# 0
# 1
# !!BREAK!!
9 hoặc
while i < 3:
    if i == 1:
        print('!!CONTINUE!!')
        i += 1
        continue
    print(i)
    i += 1
# 0
# !!CONTINUE!!
# 2
0

  • Toán tử Boolean trong Python (and, or, not)

Chấm dứt vòng lặp. i = 0 while i < 3: print(i) i += 1 # 0 # 1 # 2 7

Sử dụng

i = 0

while i < 3:
    print(i)
    i += 1
# 0
# 1
# 2
7 để kết thúc vòng lặp
i = 0

while i < 3:
    print(i)
    i += 1
# 0
# 1
# 2
1

i = 0

while i < 3:
    print(i)
    if i == 1:
        print('!!BREAK!!')
        break
    i += 1
# 0
# 1
# !!BREAK!!

nguồn.

Tiếp tục chu kỳ tiếp theo. i = 0 while i < 3: print(i) i += 1 # 0 # 1 # 2 8

Bạn có thể bỏ qua chu kỳ và tiếp tục chu kỳ tiếp theo trước ngày

i = 0

while i < 3:
    print(i)
    i += 1
# 0
# 1
# 2
8

i = 0

while i < 3:
    print(i)
    i += 1
# 0
# 1
# 2
7 chấm dứt toàn bộ vòng lặp, nhưng
i = 0

while i < 3:
    print(i)
    i += 1
# 0
# 1
# 2
8 chỉ bỏ qua mã sau câu lệnh
i = 0

while i < 3:
    print(i)
    i += 1
# 0
# 1
# 2
8 trong chu trình

while i < 3:
    if i == 1:
        print('!!CONTINUE!!')
        i += 1
        continue
    print(i)
    i += 1
# 0
# !!CONTINUE!!
# 2

nguồn.

Lưu ý rằng nếu bạn viết mã cho một biến được sử dụng trong

i = 0

while i < 3:
    print(i)
    if i == 1:
        print('!!BREAK!!')
        break
    i += 1
# 0
# 1
# !!BREAK!!
8, chẳng hạn như
i = 0

while i < 3:
    print(i)
    i += 1
else:
    print('!!FINISH!!')
# 0
# 1
# 2
# !!FINISH!!
0 sau
i = 0

while i < 3:
    print(i)
    i += 1
# 0
# 1
# 2
8, biến đó sẽ không được cập nhật và vòng lặp sẽ không bị kết thúc đột ngột

Việc chấm dứt bắt buộc được mô tả ở cuối

Liên kết được tài trợ

Thực hiện sau khi chấm dứt bình thường. i = 0 while i < 3: print(i) i += 1 # 0 # 1 # 2 9

Sử dụng

i = 0

while i < 3:
    print(i)
    i += 1
# 0
# 1
# 2
9 để thực hiện một cái gì đó sau khi vòng lặp đã hoàn thành thành công

i = 0

while i < 3:
    print(i)
    i += 1
else:
    print('!!FINISH!!')
# 0
# 1
# 2
# !!FINISH!!

nguồn.

Nếu vòng lặp kết thúc bởi

i = 0

while i < 3:
    print(i)
    i += 1
# 0
# 1
# 2
7, bộ trong mệnh đề
i = 0

while i < 3:
    print(i)
    i += 1
# 0
# 1
# 2
9 không được thực thi

i = 0

while i < 3:
    print(i)
    if i == 1:
        print('!!BREAK!!')
        break
    i += 1
else:
    print('!!FINISH!!')
# 0
# 1
# !!BREAK!!

nguồn.

Trong trường hợp của

i = 0

while i < 3:
    print(i)
    i += 1
# 0
# 1
# 2
8, bộ trong mệnh đề
i = 0

while i < 3:
    print(i)
    i += 1
# 0
# 1
# 2
9 được thực thi

i = 0

while i < 3:
    if i == 1:
        print('!!SKIP!!')
        i += 1
        continue
    print(i)
    i += 1
else:
    print('!!FINISH!!')
# 0
# !!SKIP!!
# 2
# !!FINISH!!

nguồn.

Vòng lặp vô hạn với câu lệnh i = 0 while i < 3: print(i) i += 1 # 0 # 1 # 2 1

Nếu biểu thức điều kiện trong câu lệnh

i = 0

while i < 3:
    print(i)
    i += 1
# 0
# 1
# 2
1 luôn là
i = 0

while i < 3:
    print(i)
    i += 1
# 0
# 1
# 2
5, vòng lặp sẽ không bao giờ kết thúc và quá trình thực hiện được lặp lại vô tận

Trong ví dụ sau, thời gian UNIX được lấy bởi

i = 0

while i < 3:
    print(i)
    if i == 1:
        print('!!BREAK!!')
        break
    i += 1
else:
    print('!!FINISH!!')
# 0
# 1
# !!BREAK!!
1 và thời gian đã trôi qua được đo để đặt điều kiện cho
i = 0

while i < 3:
    print(i)
    i += 1
# 0
# 1
# 2
7

import time

start = time.time()

while True:
    time.sleep(1)
    print('processing...')
    if time.time() - start > 5:
        print('!!BREAK!!')
        break
# processing...
# processing...
# processing...
# processing...
# processing...
# !!BREAK!!

nguồn.

Ví dụ: một số khác 0 hoặc một chuỗi không trống được coi là

i = 0

while i < 3:
    print(i)
    i += 1
# 0
# 1
# 2
5, do đó, thậm chí là
i = 0

while i < 3:
    print(i)
    if i == 1:
        print('!!BREAK!!')
        break
    i += 1
else:
    print('!!FINISH!!')
# 0
# 1
# !!BREAK!!
4, v.v. sẽ dẫn đến một vòng lặp vô hạn

  • Chuyển đổi bool (True, False) và các loại khác với nhau trong Python

start = time.time()

while 1:
    time.sleep(1)
    print('processing...')
    if time.time() - start > 5:
        print('!!BREAK!!')
        break
# processing...
# processing...
# processing...
# processing...
# processing...
# !!BREAK!!

nguồn.

Trong mã mẫu ở trên, vòng lặp vô hạn được sử dụng để giải thích, nhưng thao tác tương tự có thể được viết mà không cần vòng lặp vô hạn như minh họa bên dưới

start = time.time()

while time.time() - start <= 5:
    time.sleep(1)
    print('processing...')
else:
    print('!!FINISH!!')
# processing...
# processing...
# processing...
# processing...
# processing...
# !!FINISH!!

nguồn.

Chấm dứt với đầu vào bàn phím

Để kết thúc vòng lặp vô hạn bằng cách nhập bàn phím thay vì cài đặt

i = 0

while i < 3:
    print(i)
    i += 1
# 0
# 1
# 2
7, hãy bắt
i = 0

while i < 3:
    print(i)
    if i == 1:
        print('!!BREAK!!')
        break
    i += 1
else:
    print('!!FINISH!!')
# 0
# 1
# !!BREAK!!
6 bằng cách
i = 0

while i < 3:
    print(i)
    if i == 1:
        print('!!BREAK!!')
        break
    i += 1
else:
    print('!!FINISH!!')
# 0
# 1
# !!BREAK!!
7

i = 0

while i < 3:
    print(i)
    i += 1
# 0
# 1
# 2
0

nguồn.

Nếu bạn nhấn

i = 0

while i < 3:
    print(i)
    if i == 1:
        print('!!BREAK!!')
        break
    i += 1
else:
    print('!!FINISH!!')
# 0
# 1
# !!BREAK!!
7 tại thiết bị đầu cuối đang chạy (Mac) hoặc dấu nhắc lệnh (Windows
i = 0

while i < 3:
    print(i)
    if i == 1:
        print('!!BREAK!!')
        break
    i += 1
else:
    print('!!FINISH!!')
# 0
# 1
# !!BREAK!!
9), vòng lặp while sẽ kết thúc và mệnh đề
i = 0

while i < 3:
    if i == 1:
        print('!!SKIP!!')
        i += 1
        continue
    print(i)
    i += 1
else:
    print('!!FINISH!!')
# 0
# !!SKIP!!
# 2
# !!FINISH!!
0 được thực thi

Xem bài viết sau để xử lý ngoại lệ

  • "thử. ngoại trừ. khác. Cuối cùng. " bằng Python

Buộc chấm dứt

Nếu bạn đặt sai biểu thức điều kiện, quá trình có thể bất ngờ rơi vào một vòng lặp vô tận và không bao giờ kết thúc

Vòng lặp while vô hạn trong Python là gì?

Vòng lặp while vô hạn đề cập đến vòng lặp while trong đó điều kiện while không bao giờ sai . Khi một điều kiện không bao giờ sai, chương trình sẽ đi vào vòng lặp và tiếp tục lặp đi lặp lại cùng một khối mã đó và vòng lặp không bao giờ kết thúc.

Chúng ta có thể chạy vòng lặp vô hạn trong Python không?

Chúng ta có thể tạo vòng lặp vô hạn trong Python thông qua câu lệnh while . Trong một vòng lặp, biến được đánh giá và cập nhật liên tục (trong khi điều kiện đã cho là Đúng). Chúng ta có thể tạo một vòng lặp vô hạn trong Python nếu chúng ta đặt điều kiện theo cách mà nó luôn đánh giá là Đúng.

Vòng lặp while vô hạn có khả thi không?

Vòng lặp vô hạn . Dưới đây là một ví dụ về mã sẽ chạy mãi mãi. Không cần thiết phải kiểm tra bất kỳ vòng lặp vô hạn nào. Một vòng lặp vô tận sẽ chạy mãi mãi, nhưng chương trình có thể được kết thúc bằng từ khóa break. A common infinite loop occurs when the condition of the while statement is set to true . Below is an example of code that will run forever. It is not necessary to test any infinite loops. An infinite loop will run forever, but the program can be terminated with the break keyword.

Vòng lặp while có thể chạy mãi không?

Vì vậy, vòng lặp trong khi của bạn không bao giờ có thể kết thúc