Tại sao Python không có do while?

Vòng lặp do while dùng để kiểm tra điều kiện sau khi thực hiện câu lệnh. Nó giống như vòng lặp while nhưng nó được thực hiện ít nhất một lần

Cú pháp vòng lặp Do While chung

do {
     //statement
} while (condition);

Ví dụ vòng lặp Do While của Python

i = 1

while True:
    print(i)
    i = i + 1
    if(i > 5):
        break

đầu ra

Nếu bạn muốn tự động hóa một tác vụ lặp đi lặp lại cụ thể hoặc ngăn bản thân viết mã lặp đi lặp lại trong chương trình của mình, sử dụng vòng lặp là tùy chọn tốt nhất cho việc đó

Vòng lặp là một tập hợp các hướng dẫn chạy lặp đi lặp lại cho đến khi đáp ứng một điều kiện. Hãy cùng tìm hiểu thêm về cách thức hoạt động của các vòng lặp trong Python

Vòng lặp trong Python

Có hai loại vòng lặp được tích hợp trong Python

  • number = 0
    while number < 10:
        print(f"Number is {number}!")
        number = number + 1
    
    0 vòng lặp
  • number = 0
    while number < 10:
        print(f"Number is {number}!")
        number = number + 1
    
    1 vòng lặp

Hãy tập trung vào cách bạn có thể tạo một vòng lặp

number = 0
while number < 10:
    print(f"Number is {number}!")
    number = number + 1
1 trong Python và cách nó hoạt động

Vòng lặp while trong Python là gì?

Cú pháp chung của vòng lặp

number = 0
while number < 10:
    print(f"Number is {number}!")
    number = number + 1
1 trong Python trông như thế này

while condition:
    execute this code in the loop's body

Vòng lặp while sẽ chạy một đoạn mã trong khi điều kiện là True. Nó sẽ tiếp tục thực thi tập hợp các câu lệnh mã mong muốn cho đến khi điều kiện đó không còn đúng nữa

Vòng lặp while sẽ luôn kiểm tra điều kiện trước khi chạy

Nếu điều kiện đánh giá là

number = 0
while number < 10:
    print(f"Number is {number}!")
    number = number + 1
4 thì vòng lặp sẽ chạy mã trong phần thân của vòng lặp

Ví dụ: vòng lặp này chạy miễn là

number = 0
while number < 10:
    print(f"Number is {number}!")
    number = number + 1
5 nhỏ hơn
number = 0
while number < 10:
    print(f"Number is {number}!")
    number = number + 1
6

number = 0
while number < 10:
    print(f"Number is {number}!")
    number = number + 1

đầu ra

i = 1

while True:
    print(i)
    i = i + 1
    if(i > 5):
        break
1

Ở đây, biến

number = 0
while number < 10:
    print(f"Number is {number}!")
    number = number + 1
5 ban đầu được đặt thành
number = 0
while number < 10:
    print(f"Number is {number}!")
    number = number + 1
8

Trước khi bất kỳ đoạn mã nào được chạy, Python sẽ kiểm tra điều kiện (

number = 0
while number < 10:
    print(f"Number is {number}!")
    number = number + 1
9). Nó đánh giá là True để câu lệnh in được thực thi và
i = 1

while True:
    print(i)
    i = i + 1
    if(i > 5):
        break
10 được in ra bàn điều khiển

number = 0
while number < 10:
    print(f"Number is {number}!")
    number = number + 1
5 sau đó được tăng lên bởi
i = 1

while True:
    print(i)
    i = i + 1
    if(i > 5):
        break
12. Điều kiện được đánh giá lại và nó lại là Đúng, do đó, toàn bộ quy trình được lặp lại cho đến khi
number = 0
while number < 10:
    print(f"Number is {number}!")
    number = number + 1
5 bằng với
i = 1

while True:
    print(i)
    i = i + 1
    if(i > 5):
        break
14

Lần này

i = 1

while True:
    print(i)
    i = i + 1
    if(i > 5):
        break
15 được in ra và
number = 0
while number < 10:
    print(f"Number is {number}!")
    number = number + 1
5 được tăng lên, nhưng bây giờ
number = 0
while number < 10:
    print(f"Number is {number}!")
    number = number + 1
5 bằng với
number = 0
while number < 10:
    print(f"Number is {number}!")
    number = number + 1
6 nên điều kiện không còn được đáp ứng và do đó vòng lặp kết thúc

Có thể vòng lặp

number = 0
while number < 10:
    print(f"Number is {number}!")
    number = number + 1
1 không bao giờ chạy nếu nó không thỏa mãn điều kiện, như trong ví dụ này

number = 0
while number < 10:
    print(f"Number is {number}!")
    number = number + 1
5

Vì điều kiện luôn là Sai nên các lệnh trong phần thân của vòng lặp không thực thi

Đừng tạo vòng lặp vô hạn

Như bạn đã thấy từ ví dụ trên, các vòng lặp

number = 0
while number < 10:
    print(f"Number is {number}!")
    number = number + 1
1 thường đi kèm với một biến có giá trị thay đổi trong suốt thời gian của vòng lặp. Và cuối cùng nó xác định khi nào vòng lặp sẽ kết thúc

Nếu bạn không thêm dòng này, bạn sẽ tạo ra một vòng lặp vô hạn

number = 0
while number < 10:
    print(f"Number is {number}!")
    number = number + 1
5 sẽ không được tăng và cập nhật. Nó sẽ luôn được đặt và duy trì ở giá trị
number = 0
while number < 10:
    print(f"Number is {number}!")
    number = number + 1
8 và do đó điều kiện
number = 0
while number < 10:
    print(f"Number is {number}!")
    number = number + 1
9 sẽ mãi mãi là True. Điều này có nghĩa là vòng lặp sẽ tiếp tục lặp mãi

number = 0
while number < 10:
    print(f"Number is {number}!")
    number = number + 1
0

đầu ra

number = 0
while number < 10:
    print(f"Number is {number}!")
    number = number + 1
1

Nó chạy vô tận

Nó cũng giống như làm điều này

number = 0
while number < 10:
    print(f"Number is {number}!")
    number = number + 1
2

Nếu bạn thấy mình trong một tình huống như thế này thì sao?

Nhấn

number = 0
while number < 10:
    print(f"Number is {number}!")
    number = number + 1
54 để thoát và kết thúc vòng lặp

Vòng lặp do while là gì?

Cú pháp chung của vòng lặp

number = 0
while number < 10:
    print(f"Number is {number}!")
    number = number + 1
55 trong các ngôn ngữ lập trình khác giống như thế này

number = 0
while number < 10:
    print(f"Number is {number}!")
    number = number + 1
5

Ví dụ, một vòng lặp do while trong C trông như thế này

number = 0
while number < 10:
    print(f"Number is {number}!")
    number = number + 1
6

Điều duy nhất trong các vòng lặp do while là mã trong khối vòng lặp sẽ được thực thi ít nhất một lần

Mã trong câu lệnh chạy một lần và sau đó điều kiện chỉ được kiểm tra sau khi mã được thực thi

Vì vậy, mã chạy một lần đầu tiên và sau đó điều kiện được kiểm tra

Nếu điều kiện được kiểm tra đánh giá là đúng, vòng lặp tiếp tục

Có những trường hợp bạn muốn mã của mình chạy ít nhất một lần và đó là lúc các vòng lặp while trở nên hữu ích

Ví dụ: khi bạn đang viết một chương trình nhận đầu vào từ người dùng, bạn có thể chỉ yêu cầu một số dương. Mã sẽ chạy ít nhất một lần. Nếu số người dùng gửi là số âm, vòng lặp sẽ tiếp tục chạy. Nếu nó là tích cực, nó sẽ dừng lại

Python không có chức năng tích hợp để tạo vòng lặp

number = 0
while number < 10:
    print(f"Number is {number}!")
    number = number + 1
55 một cách rõ ràng như các ngôn ngữ khác. Nhưng có thể mô phỏng vòng lặp
number = 0
while number < 10:
    print(f"Number is {number}!")
    number = number + 1
55 bằng Python

Cách mô phỏng vòng lặp do while trong Python

Để tạo vòng lặp

number = 0
while number < 10:
    print(f"Number is {number}!")
    number = number + 1
55 trong Python, bạn cần sửa đổi vòng lặp
number = 0
while number < 10:
    print(f"Number is {number}!")
    number = number + 1
1 một chút để có hành vi tương tự như vòng lặp
number = 0
while number < 10:
    print(f"Number is {number}!")
    number = number + 1
55 trong các ngôn ngữ khác

Như một sự bồi dưỡng cho đến nay, một vòng lặp

number = 0
while number < 10:
    print(f"Number is {number}!")
    number = number + 1
55 sẽ chạy ít nhất một lần. Nếu điều kiện được đáp ứng, thì nó sẽ chạy lại

Mặt khác, vòng lặp

number = 0
while number < 10:
    print(f"Number is {number}!")
    number = number + 1
1 không chạy ít nhất một lần và trên thực tế có thể không bao giờ chạy. Nó chạy khi và chỉ khi điều kiện được đáp ứng

Vì vậy, giả sử chúng ta có một ví dụ mà chúng ta muốn một dòng mã chạy ít nhất một lần

number = 0
while number < 10:
    print(f"Number is {number}!")
    number = number + 1
4

Mã sẽ chạy ít nhất một lần, yêu cầu đầu vào của người dùng

Nó luôn được đảm bảo chạy ít nhất một lần, với

number = 0
while number < 10:
    print(f"Number is {number}!")
    number = number + 1
4, nếu không sẽ tạo ra một vòng lặp vô hạn

Nếu người dùng nhập đúng từ bí mật, vòng lặp sẽ kết thúc

Nếu người dùng nhập sai từ bí mật quá 7 lần thì vòng lặp sẽ bị thoát hoàn toàn

Câu lệnh

number = 0
while number < 10:
    print(f"Number is {number}!")
    number = number + 1
04 cho phép bạn kiểm soát luồng của vòng lặp
number = 0
while number < 10:
    print(f"Number is {number}!")
    number = number + 1
1 và không kết thúc bằng vòng lặp vô hạn

number = 0
while number < 10:
    print(f"Number is {number}!")
    number = number + 1
04 sẽ ngay lập tức kết thúc vòng lặp hiện tại cùng nhau và thoát ra khỏi nó

Vì vậy, đây là cách bạn tạo hiệu ứng tương tự như vòng lặp

number = 0
while number < 10:
    print(f"Number is {number}!")
    number = number + 1
55 trong Python

Vòng lặp luôn thực hiện ít nhất một lần. Nó sẽ tiếp tục lặp nếu một điều kiện không được đáp ứng và sau đó kết thúc khi một điều kiện được đáp ứng

Phần kết luận

Bây giờ bạn đã biết cách tạo vòng lặp

number = 0
while number < 10:
    print(f"Number is {number}!")
    number = number + 1
55 trong Python

Nếu muốn tìm hiểu thêm về Python, bạn có thể xem video 12 Dự án Python trên kênh YouTube của freeCodeCamp. Bạn sẽ xây dựng 12 dự án và nó hướng đến người mới bắt đầu

freeCodeCamp cũng có Chứng chỉ Python miễn phí để giúp bạn hiểu rõ và có cái nhìn tổng quan về các nguyên tắc cơ bản quan trọng của ngôn ngữ

Bạn cũng sẽ được xây dựng năm dự án vào cuối khóa học để thực hành những gì bạn đã học

Cảm ơn đã đọc và học tập vui vẻ

QUẢNG CÁO

QUẢNG CÁO

QUẢNG CÁO

QUẢNG CÁO

QUẢNG CÁO

QUẢNG CÁO

QUẢNG CÁO


Tại sao Python không có do while?
Dionysia Lemonaki

Học một cái gì đó mới mỗi ngày và viết về nó


Nếu bài viết này hữu ích, hãy tweet 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

Có hàm while trong Python không?

Python có hai lệnh lặp nguyên thủy. vòng lặp while .

tại sao là làm

Vòng lặp while không chạy vì điều kiện không được đáp ứng . Sau khi chạy vòng lặp for, giá trị của biến i là 5, lớn hơn ba. Để khắc phục điều này, bạn nên gán lại giá trị trước khi chạy vòng lặp while (chỉ cần thêm var i=1; vào giữa vòng lặp for và vòng lặp while).

Vòng lặp nào không tồn tại trong Python?

Trong Python, không có kiểu C cho vòng lặp , tôi. e. , cho (i=0; i

Trong khi không được thực hiện trong Python là gì?

A WhileNotDoneLoop là vòng lặp while trong đó biến điều khiển vòng lặp là một giá trị boolean, thường được đặt tên là done, được đặt thành true ở đâu đó trong phần thân của vòng lặp.