Vòng lặp while hoạt động như thế nào trong python?

Giả sử chúng ta phải in một tin nhắn nhiều lần. Chúng ta có thể sử dụng vòng lặp while để viết chức năng tiện ích này

def print_msg(count, msg):
    while count > 0:
        print(msg)
        count -= 1


print_msg(3, "Hello World")

đầu ra

Vòng lặp while hoạt động như thế nào trong python?
Ví dụ vòng lặp trong khi Python


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

Đôi khi, chúng tôi rõ ràng muốn thực thi một khối mã vô thời hạn cho đến khi nhận được tín hiệu thoát. Chúng ta có thể triển khai tính năng này bằng cách sử dụng câu lệnh ngắt và chặn “while True”

Dưới đây là một ví dụ về tập lệnh tiện ích lấy đầu vào của người dùng (số nguyên) và in giá trị bình phương của nó. Chương trình kết thúc khi người dùng nhập 0

while True:
    i = input('Please enter an integer (0 to exit):\n')
    i = int(i)
    if i == 0:
        print("Exiting the Program")
        break
    print(f'{i} square is {i ** 2}')

Đây là đầu ra của một lần chạy mẫu của chương trình này

Vòng lặp while hoạt động như thế nào trong python?
Vòng lặp trong khi Python với câu lệnh break


Vòng lặp trong khi Python với Câu lệnh tiếp tục

Giả sử chúng ta muốn tập lệnh trên chỉ hoạt động với các số dương. Trong trường hợp đó, chúng ta có thể sử dụng câu lệnh continue để bỏ qua việc thực thi khi người dùng nhập số âm

while True:
    i = input('Please enter an integer (0 to exit):\n')
    i = int(i)
    if i < 0:
        print("The program works with Positive Integers only.")
        continue
    if i == 0:
        print("Exiting the Program")
        break
    print(f'{i} square is {i ** 2}')

đầu ra

Please enter an integer (0 to exit):
5
5 square is 25
Please enter an integer (0 to exit):
-10
The program works with Positive Integers only.
Please enter an integer (0 to exit):
0
Exiting the Program


Python while Vòng lặp với câu lệnh khác

Chúng ta có thể sử dụng khối lệnh khác với vòng lặp while. Mã khối khác được thực thi khi vòng lặp while kết thúc bình thường i. e. điều kiện trở thành Sai

Nếu vòng lặp while kết thúc do Lỗi hoặc câu lệnh ngắt, thì mã khối khác không được thực thi

count = 5

while count > 0:
    print("Welcome")
    count -= 1
else:
    print("Exiting the while Loop")

đầu ra

Vòng lặp while hoạt động như thế nào trong python?
Vòng lặp trong khi Python với khối khác

Hãy xem điều gì sẽ xảy ra khi vòng lặp while kết thúc do lỗi

count = 5

while count > 0:
    print("Welcome")
    count -= 1
    if count == 2:
        raise ValueError
else:
    print("Exiting the while Loop")

đầu ra

Welcome
Welcome
Welcome
Traceback (most recent call last):
  File "/Users/pankaj/Documents/PycharmProjects/PythonTutorialPro/hello-world/while-loop.py", line 7, in 
    raise ValueError
ValueError

Vòng lặp while hoạt động như thế nào trong python?
Trong khi vòng lặp khác có lỗi

Hãy thay đổi chương trình để thoát khỏi vòng lặp while

count = 5

while count > 0:
    print("Welcome")
    count -= 1
    if count == 2:
        break
else:
    print("Exiting the while Loop")

đầu ra

________số 8


Ví dụ vòng lặp lồng nhau

Chúng ta cũng có thể có các vòng lặp while lồng nhau. Dưới đây là một ví dụ về việc tạo một danh sách các bộ bằng cách sử dụng các vòng lặp while lồng nhau

def print_msg(count, msg):
    while count > 0:
        print(msg)
        count -= 1


print_msg(3, "Hello World")
0

đầu ra.

def print_msg(count, msg):
    while count > 0:
        print(msg)
        count -= 1


print_msg(3, "Hello World")
2


Sự kết luận

Vòng lặp while trong Python được sử dụng để chạy một khối mã trong số lần cụ thể. Chúng ta có thể sử dụng câu lệnh break và continue với vòng lặp while. Khối khác với vòng lặp while được thực thi khi vòng lặp while kết thúc bình thường. Vòng lặp while cũng hữu ích trong việc chạy tập lệnh vô thời hạn trong vòng lặp vô hạn

Câu lệnh vòng lặp while trong ngôn ngữ lập trình Python lặp đi lặp lại việc thực thi câu lệnh đích miễn là một điều kiện nhất định là đúng

cú pháp

Cú pháp của vòng lặp while trong ngôn ngữ lập trình Python là -

while True:
    i = input('Please enter an integer (0 to exit):\n')
    i = int(i)
    if i == 0:
        print("Exiting the Program")
        break
    print(f'{i} square is {i ** 2}')
1

Ở đây, (các) câu lệnh có thể là một câu lệnh đơn lẻ hoặc một khối các câu lệnh. Điều kiện có thể là bất kỳ biểu thức nào và true là bất kỳ giá trị khác 0 nào. Vòng lặp lặp khi điều kiện đúng

Khi điều kiện trở thành sai, điều khiển chương trình chuyển đến dòng ngay sau vòng lặp

Trong Python, tất cả các câu lệnh được thụt vào bởi cùng một số khoảng cách ký tự sau cấu trúc lập trình được coi là một phần của một khối mã. Python sử dụng thụt đầu dòng làm phương pháp nhóm các câu lệnh

Sơ đồ dòng chảy

Vòng lặp while hoạt động như thế nào trong python?

Ở đây, điểm mấu chốt của vòng lặp while là vòng lặp có thể không bao giờ chạy. Khi điều kiện được kiểm tra và kết quả là sai, thân vòng lặp sẽ bị bỏ qua và câu lệnh đầu tiên sau vòng lặp while sẽ được thực thi

Thí dụ

Bản trình diễn trực tiếp
while True:
    i = input('Please enter an integer (0 to exit):\n')
    i = int(i)
    if i == 0:
        print("Exiting the Program")
        break
    print(f'{i} square is {i ** 2}')
2

Khi đoạn mã trên được thực thi, nó tạo ra kết quả sau -

while True:
    i = input('Please enter an integer (0 to exit):\n')
    i = int(i)
    if i == 0:
        print("Exiting the Program")
        break
    print(f'{i} square is {i ** 2}')
3

Khối ở đây, bao gồm các câu lệnh in và tăng, được thực hiện lặp đi lặp lại cho đến khi số đếm không nhỏ hơn 9. Với mỗi lần lặp lại, giá trị hiện tại của số lượng chỉ mục được hiển thị và sau đó tăng thêm 1

Vòng lặp vô hạn

Một vòng lặp trở thành vòng lặp vô hạn nếu một điều kiện không bao giờ trở thành FALSE. Bạn phải thận trọng khi sử dụng vòng lặp while vì có khả năng điều kiện này không bao giờ chuyển thành giá trị FALSE. Điều này dẫn đến một vòng lặp không bao giờ kết thúc. Một vòng lặp như vậy được gọi là một vòng lặp vô hạn

Một vòng lặp vô hạn có thể hữu ích trong lập trình máy khách/máy chủ, nơi máy chủ cần chạy liên tục để các chương trình máy khách có thể giao tiếp với nó khi cần thiết

while True:
    i = input('Please enter an integer (0 to exit):\n')
    i = int(i)
    if i == 0:
        print("Exiting the Program")
        break
    print(f'{i} square is {i ** 2}')
4

Khi đoạn mã trên được thực thi, nó tạo ra kết quả sau -

while True:
    i = input('Please enter an integer (0 to exit):\n')
    i = int(i)
    if i == 0:
        print("Exiting the Program")
        break
    print(f'{i} square is {i ** 2}')
5

Ví dụ trên diễn ra trong một vòng lặp vô hạn và bạn cần sử dụng CTRL+C để thoát khỏi chương trình

Sử dụng Tuyên bố khác với Vòng lặp While

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 while, câu lệnh khác được thực thi khi điều kiện trở thành sai

Ví dụ sau minh họa sự kết hợp của câu lệnh other với câu lệnh while in ra một số miễn là nó nhỏ hơn 5, nếu không thì câu lệnh khác sẽ được thực thi

Bản trình diễn trực tiếp
while True:
    i = input('Please enter an integer (0 to exit):\n')
    i = int(i)
    if i == 0:
        print("Exiting the Program")
        break
    print(f'{i} square is {i ** 2}')
6

Khi đoạn mã trên được thực thi, nó tạo ra kết quả sau -

while True:
    i = input('Please enter an integer (0 to exit):\n')
    i = int(i)
    if i == 0:
        print("Exiting the Program")
        break
    print(f'{i} square is {i ** 2}')
7

Suite Độc Lập

Tương tự như cú pháp câu lệnh if, nếu mệnh đề while của bạn chỉ bao gồm một câu lệnh duy nhất, thì nó có thể được đặt trên cùng một dòng với tiêu đề while

Đây là cú pháp và ví dụ về mệnh đề while một dòng -

while True:
    i = input('Please enter an integer (0 to exit):\n')
    i = int(i)
    if i == 0:
        print("Exiting the Program")
        break
    print(f'{i} square is {i ** 2}')
8

Tốt hơn là không thử ví dụ trên vì nó đi vào vòng lặp vô hạn và bạn cần nhấn tổ hợp phím CTRL+C để thoát

Vòng lặp while hoạt động như thế nào?

Vòng lặp while kiểm tra điều kiện trước và nếu nó trả về true, thì mã bên trong nó sẽ chạy. Vòng lặp tiếp tục cho đến khi điều kiện cho trước trả về giá trị sai thì dừng . Ngoài ra, vòng lặp do while chạy mã của nó một lần trước khi kiểm tra điều kiện và chỉ chạy lại nếu điều kiện đúng.

Vòng lặp while bắt đầu như thế nào?

Vòng lặp while bắt đầu bằng cách đánh giá điều kiện . Nếu điều kiện đánh giá là đúng, mã trong khối mã sẽ được thực thi. Nếu điều kiện đánh giá là sai, mã trong khối mã không được thực thi và vòng lặp kết thúc.