Hướng dẫn for loop not looping python - vòng lặp for not looping python
Tôi đang viết một chức năng loại bỏ tất cả các nguyên âm khỏi một từ. Có vẻ như thế này: Show
Tôi hy vọng nó sẽ đi qua tất cả các chữ cái trong từ, kiểm tra từng chữ cái nếu nó nằm trong mảng nguyên âm và, nếu vậy, hãy xóa nó. Tuy nhiên, dường như nó không kiểm tra tất cả các chữ cái. Ví dụ: cho cuộc gọi sau:
Tôi đang nhận được đầu ra sau:
Vì một số lý do, nó bỏ qua 2, 3 và 4 thứ hai. Tôi đang nhận được một kết quả tương tự với các từ khác. Tại sao chuyện này đang xảy ra? 0 điểm Khoảng 9 năm
Tôi nhận được một chức năng của người Viking không thành công trên 121, trả về đúng khi nó sẽ trả về sai. Bản in đầu ra thử nghiệm của tôi cho thấy nó chỉ kiểm tra x % 3, tại sao không phải là vòng lặp của tôi cho vòng lặp chạy qua 3, 5, 7, 9 và 11 (căn bậc hai của 121)? Nghĩ rằng phạm vi của tôi sẽ kiểm tra tất cả các số nguyên lẻ từ 3 đến sqrt của x. Trả lời 52148EFC548C358FDE00189B
đầu ra
Có lẽ bạn trở lại quá sớm, hãy xem xét điều đó đối với If-Else, một trong số họ sẽ luôn thực hiện điểm Khoảng 9 năm Tôi nhận được một chức năng của người Viking không thành công trên 121, trả về đúng khi nó sẽ trả về sai. Bản in đầu ra thử nghiệm của tôi cho thấy nó chỉ kiểm tra x % 3, tại sao không phải là vòng lặp của tôi cho vòng lặp chạy qua 3, 5, 7, 9 và 11 (căn bậc hai của 121)? Nghĩ rằng phạm vi của tôi sẽ kiểm tra tất cả các số nguyên lẻ từ 3 đến sqrt của x.
Các khóa học miễn phí phổ biến Tôi có một danh sách các chuỗi. Tôi muốn xóa tất cả các mục khỏi danh sách bắt đầu bằng ký tự '#'. Nhưng chạy vòng lặp của tôi chỉ quản lý để loại bỏ một tập hợp các mục được nhắm mục tiêu. Sau đó, tôi chạy lại vòng lặp trong cùng một danh sách và nó loại bỏ một bộ khác. Nhưng tôi phải làm điều này nhiều lần trước khi nó thông qua toàn bộ danh sách. Đây là mã của tôi:
Khi tôi chạy mã này lần đầu tiên nó sẽ không xóa tất cả các mục tôi muốn xóa. Chỉ 9. Vì vậy, tôi sao chép và dán cùng một mã vào nhàn rỗi và chạy lại và nó sẽ loại bỏ thêm 4 mục, nhưng vẫn không phải tất cả. Vì vậy, tôi dán và chạy nó một lần nữa và 2 cái khác được gỡ bỏ, nhưng không phải tất cả. Vì vậy, tôi chạy nó một lần nữa và nó loại bỏ 1, sau đó một lần nữa và nó loại bỏ 1. Điều này thực sự lạ. Điều gì đang xảy ra? Lưu ý: Tôi dự định mở rộng phần này một chút, nhưng bạn cũng có thể đọc bài học xuất sắc ở đây: Chương 2: Điều khiển dòng chảy - cho các vòng lặp và hàm phạm vi ()Chapter 2: Flow Control – for Loops and the range() Function Tại sao lại lặp?Một vòng lặp là một cấu trúc lập trình trong đó chúng tôi xác định một khối mã mà chúng tôi muốn máy tính thực thi nhiều lần, cũng như số lần máy tính nên thực thi khối mã đó.loop is a programming construct in which we define a block of code that we want the computer to execute repeatedly, as well as how many times the computer should execute that block of code. Theo "khối mã", ý tôi là, bất kỳ mã nào. Ví dụ: đây là mã Python để in 5:
Và đây là tập lệnh lặp lại "khối mã" 5 lần:
Đủ đơn giản. Nhưng điều gì sẽ xảy ra nếu tôi muốn chạy khối mã đó 50 lần. Hoặc 5.000.000 lần? Sao chép và dán chỉ có thể giúp chúng tôi cho đến nay. Nhưng với một vòng lặp, chúng ta có thể ra lệnh cho máy tính thực thi khối mã đó bao nhiêu lần tùy thích, mà không viết mã đó, lặp đi lặp lại.loop, we can command the computer to execute that block of code as many times as we want, without physically writing that code, over and over. Đây là những gì mà tập lệnh in-hello-5-Times trước đó trông giống như một vòng lặp cơ bản trong Python:for-loop in Python:
Giải phẫu của một vòng lặp rất nhàm chánDù bạn có tin hay không, có rất nhiều điều để hiểu trong đoạn trích hai dòng nhàm chán đó. Dưới đây là những điểm nổi bật, mà tôi sẽ giải thích trong suốt bài học này.
Thực hiện một vòng lặp nhàm chán trong Python tương tácTrước khi chúng tôi bị sa lầy vào các chi tiết, hãy gõ và thực hiện mã trên trong trình thông dịch Pythong tương tác (tức là ipython). Một vài sắc thái sẽ xuất hiện ngay cả trong việc thực hiện hai dòng đó.interactive Pythong interpreter (i.e. ipython). A few nuances will come up even in the execution of those two lines. Lưu ý: Nếu bạn đang sử dụng ipython - điều mà bạn nên làm - ngay khi bạn nhấn Enter để đi đến dòng tiếp theo, trình thông dịch sẽ tự động thêm một vết lõm cho bạn. Nếu bạn đang sử dụng Python__Preter thông thường, bạn sẽ phải thực hiện điều này theo cách thủ công, bằng cách nhấn __tab một lần hoặc vũ trụ 4 lần.ipython – which you should be doing – as soon as you hit Enter to go to the next line, the interpreter will automatically add an indentation for you. If you are using the regular python__interpreter, you will have to do this manually, either by hitting __Tab once, or the Spacebar 4 times. Một lưu ý khác: Khi bạn nhập dòng 1 line and then hit Enter – nothing will happen. That is, the Python interpreter will prompt you for another line of code to execute as a
block instead of printing out, 5. Just hit Enter one more time.Đây là mã trông như thế nào khi bạn gõ nó vào Ipython-Lưu ý cách các hình elip được sử dụng để chỉ ra sự tiếp tục của khối mã bên trong vòng lặp:ipython – note how ellipses are used to indicate the continuation of the code block inside the for-loop: Biến thể trên một vòng lặp rất nhàm chánVì vậy, đó là một vòng lặp rất nhàm chán. May mắn thay, việc xây dựng một vòng lặp không phức tạp hơn những gì tôi đã nêu ở trên. Tuy nhiên, điều quan trọng là bạn phải hiểu các yếu tố cơ bản của vòng lặp trước khi tiếp tục-tức là việc sử dụng các từ khóa 8 và 4, 5 ở cuối câu lệnh và cách thực hiện khối mã .for-loop. Luckily, the construction of a for-loop doesn't get more complicated than what I've outlined above. However, it is critical that you understand the basic elements of a for-loop before moving on – i.e. the use of the keywords 8 and 4, the 5 at the end of the statement, and how the block of code to be executed is indented.Trước khi tiếp tục, hãy thử các biến thể này:
Giải phẫu của vòng lặp ít nhàm chánCác vòng lặp trở nên thú vị hơn một chút khi bạn có thể tạo một nhiệm vụ thay đổi theo từng lần lặp. Hãy nhớ rằng biến 9 chưa sử dụng trong ví dụ nhàm chán đầu tiên? Chúng ta hãy đưa nó vào câu lệnh 0 để xem nó chứa những gì: 0Đầu ra: 1Thay vì in cùng một 5, lặp đi lặp lại, chúng tôi đã xoay sở để nói với máy tính in một cái gì đó khác nhau với mỗi lần lặp. Lưu ý rằng chúng tôi không làm tăng sự phức tạp của tuyên bố cho tất cả. Mặc dù, thành thật mà nói, chúng tôi cũng không làm tăng sự phức tạp của giá trị thế giới thực của chương trình.for statement at all. Though, to be honest, we haven't increased the complexity of the program's real world value by much either.Nhưng chúng ta hãy có một sự khác biệt ngắn gọn và tưởng tượng làm thế nào thậm chí chỉ tăng lên bởi một người có thể rất hữu ích trong thế giới thực. Điều gì sẽ xảy ra nếu có một bộ sưu tập các tệp hoặc trang web mà tất cả đều có liên quan hoặc rất giống nhau, ngoại trừ một chữ số trong URL? Ví dụ, Wikipedia có các trang cho rất nhiều thứ, bao gồm cả số. Đây là trang cho số 1. Trên thực tế, đó là trang cho năm 1 A.D. - Nếu bạn muốn số 1, bạn muốn URL này: https://en.wikipedia.org/wiki/1_(number)year 1 A.D. – if you want the number 1, you want this URL: https://en.wikipedia.org/wiki/1_(number) OK, điều gì sẽ xảy ra nếu chúng tôi muốn in các URL cho các trang Wikipedia trong 10 năm đầu tiên (a.d.), bắt đầu từ năm 1 a.d.? Mã và đầu ra của nó sẽ trông như thế này, nếu bạn thử nó ở Shell Python tương tác:1 A.D.? The code and its output would look like this, if you try it at the interactive Python shell: (Lưu ý rằng hàm 7 có thể lấy đối số thứ hai, tạo ra một chuỗi các số từ đối số thứ nhất đến thứ hai)(Cũng lưu ý rằng chúng ta phải chuyển đổi số được biểu thị bởi biến 8 thành một chuỗi theo nghĩa đen để "thêm" nó vào URL cơ sở) 2Điều gì sẽ xảy ra nếu bạn muốn các URL cho các trang Wikipedia có số lượng từ 1 đến 10? Chỉ cần sửa đổi URL cơ sở một chút:numbers 1 through 10? Just modify the base URL a bit: 3Và điều gì sẽ xảy ra nếu chúng ta muốn làm điều gì đó thú vị hơn là chỉ in ra các URL lên màn hình? Chẳng hạn như tải xuống các trang? Hoặc kiểm tra xem chúng có tồn tại không? Hoặc làm điều này cho một bộ trang web khác? Vâng, bạn có thể xác định khối mã thụt đó để làm bất cứ điều gì bạn muốn: 4Suy nghĩ và lập trình không tuyến tính với các vòng lặpGiả sử bạn đang đọc bài học này trước khi bạn đọc bài học về phân nhánh có điều kiện, câu lệnh for-loop sẽ là lần đầu tiên bạn viết một cách rõ ràng viết nó.for-loop statement will be the first time that you've explicitly written code that did not execute in the top-to-bottom order in which you wrote it. Xem xét ví dụ này: 5Khi tôi có nghĩa là mã thực thi không tuyến tính, ý tôi là mặc dù đây là dòng thứ 3 (và cuối cùng) của tập lệnh: 6- Đó không phải là lệnh thứ ba được thực thi. Thay vào đó, dòng thứ 2, khối mã thụt - 7- phải chạy khóa học của nó. Đây là một mô hình khác nhau nhiều so với viết một tập lệnh trong đó một dòng được thực thi sau một dòng khác. Trên thực tế, để có được hiệu ứng đầy đủ của bài học này, hãy thực hiện đoạn trích trên theo hai cách khác nhau: 1. Nhập nó vào vỏ Python tương tác của bạnMột lần nữa, lưu ý cách mã thụt lề không thực thi cho đến khi bạn nhấn ENTER hai lần, liên tiếp, để biểu thị phần cuối của khối mã thụt.Enter twice, consecutively, to signify the end of the indented code block. Bây giờ hãy mở trình chỉnh sửa văn bản của bạn, viết mã vào một tệp văn bản và lưu nó. Sau đó thực thi tệp đó bằng trình thông dịch Python dòng lệnh: 8Cách kiểm tra tương tác một vòng lặpMột điều đáng chú ý là nó có thể là một nỗi đau lớn để viết và thực hiện ngay cả một vòng lặp cơ bản bên trong vỏ python tương tác, bởi vì loại vỏ ngừng tương tác khi bạn thụt một khối, tức là đánh vào không trả lời.Enter does not return a response. Vì vậy, khi bạn viết thêm các vòng lặp và các cấu trúc khác yêu cầu các khối mã thụt lề, tôi khuyên bạn nên làm nó trong trình chỉnh sửa văn bản với cú pháp python làm nổi bật, sau đó dán nó vào shell. Trên thực tế, nếu bạn đang sử dụng ipython (một lần nữa, bạn nên sử dụng làm vỏ tương tác của mình), bạn có thể nhập lệnh đặc biệt 9 - sẽ dán vào bất cứ thứ gì hiện đang được sao chép vào bảng tạm của bạn.ipython (which, again, you should be using as your interactive shell), you can type in the special command 9 – which will paste in whatever is currently copied to your clipboard.Tuy nhiên, cách thích hợp để kiểm tra một vòng lặp là chỉ chạy một lần lặp và gán một giá trị cho biến trình giữ chỗ. Giả vờ rằng đây là tập lệnh hoàn chỉnh của bạn: 9Để kiểm tra nó một cách tương tác, chỉ cần gán 0 như một biến bình thường. Sau đó gõ phần còn lại của khối thụt lề như thể nó tồn tại dưới dạng tập lệnh độc lập, mà không có cấu trúc vòng lặp đó: 0Một cách để suy nghĩ nếu quá trình này là giả vờ rằng bạn đang ở trong vòng lặp và công việc duy nhất của bạn là thực thi khối mã xảy ra khi 0 là 2. Bạn không quan tâm rằng đó thực sự là một phần của vòng lặp, bạn cũng không quan tâm rằng 0 trước đây là 4 hoặc nó sẽ là 5. Bạn chỉ muốn biết những gì xảy ra trong một lần thực hiện độc lập của mã thụt lề.Bởi vì nếu nó hoạt động cho 2 hoặc cho bất kỳ số nào giữa 7 và 8 - thì bạn có thể tương đối yên tâm rằng nó sẽ hoạt động cho tất cả các số khác.Trình tự và các đối tượng khácĐể giữ cho mọi thứ đơn giản, tôi đã sử dụng hàm/đối tượng 7 như là thứ được lặp qua, tức là trình tự, tức là có thể điều chỉnh được.iterable.Có nhiều trình tự khác và các đối tượng loại có thể được sử dụng trong vòng lặp. Tôi sẽ liệt kê những cái phổ biến dưới đây, nhưng nó không có nghĩa là một danh sách đầy đủ. Đối với hầu hết các phần, bạn tìm hiểu những gì có thể hiểu được/có thể lặp lại thông qua kinh nghiệm:for-loop. I'll list the common ones below, but it is by no means an exhaustive list. For the most part, you learn what is iterable/loopable through experience: Ký tự trong một chuỗiKhi một chuỗi theo nghĩa đen được chuyển vào câu lệnh 8, khối mã sẽ được thực thi cho mỗi ký tự: 1Đây thực sự không phải là thứ bạn thấy rất nhiều trong tự nhiên. Nhưng nó hoạt động như một ví dụ đơn giản tốt Danh sách hoặc TupleĐối tượng danh sách có lẽ là đối tượng có thể lặp lại thường xuyên nhất mà bạn sẽ gặp trong Python:list object is probably the most frequent iterable object you'll come across in Python: 2Tuples (về cơ bản là danh sách đơn giản hóa) hoạt động theo cách tương tự: 3Đọc một tệp, từng dòngMột đối tượng tệp trong Python là một loại đối tượng có thể lặp lại cụ thể, trong đó một luồng dữ liệu được biểu diễn. Khi điều này được chuyển vào cấu trúc for-loop, vòng lặp sẽ thực hiện cho mọi dòng trong tệp. Giả vờ bạn có một tệp trên ổ cứng có tên là ví dụ.txt và nội dung của nó trông như thế này:example.txt, and its contents look like this: 4Để mở nó, sau đó lặp qua từng dòng (với khối mã chỉ đơn giản là in ra phiên bản trường hợp trên của mỗi dòng): 5Lưu ý: Tại sao có một dòng trống sau mỗi dòng văn bản thực tế? Đó là bởi vì trong một tệp văn bản, mỗi dòng văn bản có một ký tự mới ở cuối mỗi dòng. Và chức năng 0 bổ sung một nhân vật Newline của riêng mình nhưng giải thích bản chất của các tệp đòi hỏi hướng dẫn riêng của nó, bây giờ đủ để xem đây là một ví dụ thực tế về vòng lặp.newline character at the end of each line. And the 0 function adds a newline character of its own…But explaining the nature of files requires its own guide…It's enough for now to see this as a
real-life example of a for-loop.Biến thể trên các vòng lặpHiểu cấu trúc for-loop là đủ, vì nó là loại vòng lặp phổ biến nhất mà bạn sẽ thấy trong Python. Tuy nhiên, điều đáng để chỉ ra các biến thể và kịch bản khác mà bạn có thể thấy trong tự nhiên.for-loop construct is enough, as it is by far the most common kind of loop you will see in Python. However, it's worth pointing out the other variations and scenarios that you might see in the wild. Trong khi vòng lặpGiống như 8, từ khóa 3 được dành riêng trong Python. Và tương tự, 3 cũng được sử dụng để biểu thị một khối mã được lặp lại: 6Với vòng lặp ____ 48, bạn chỉ định một bộ sưu tập các mục được lặp lại. Với vòng lặp ____ 83, bạn chỉ định một điều kiện, nếu 7, có nghĩa là khối mã phải được thực thi. Trong đoạn trích trên, biến 9 được tăng lên với mỗi lần lặp của vòng lặp. Khi 9 đại diện cho giá trị 0, điều kiện trở thành 1 và vòng lặp dừng.Hãy suy nghĩ về những gì tương đương với vòng lặp sẽ trông như thế nào, sau đó cố gắng viết nó ra. Đây là câu trả lời của tôi (lưu ý rằng có vô số cách để thể hiện vòng lặp này, bởi vì toán học và v.v.):for-loop would look like, then try to write it down. Here's my answer (note that there are literally infinite number of ways to represent this loop, because math and etc.): 7Vòng lặp vô hạnĐiều gì sẽ xảy ra nếu một điều kiện luôn luôn là 7? Sau đó, vòng lặp đó sẽ chạy mãi mãi, về mặt lý thuyết, miễn là các quy luật logic không thay đổi. Trên thực tế, tất nhiên, nó có thể sẽ kết thúc khi máy tính của bạn hết điện hoặc vũ trụ đạt đến cái chết nhiệt.
Đây là một ví dụ về vòng lặp 3 vô hạn: 8Hoặc là cô đọng hơn: 9Và đôi khi, bạn có thể vô tình viết một vòng lặp mà bạn không nhận ra sẽ là vô hạn: 0Vì giá trị được biểu thị bằng 9 không bao giờ thay đổi (nghĩa là 9 không bao giờ được chỉ định lại kết quả của 6), giá trị của 9 là mãi mãi ở 6, tức là ít hơn 0.Vòng lặp không lặp lạiĐiều gì sẽ xảy ra nếu một điều kiện vòng lặp 3 luôn luôn là 1? Sau đó, mã bên trong vòng lặp sẽ không bao giờ chạy: 1 2Thật dễ dàng để tạo phiên bản ____ 48 vòng của vòng lặp không thực hiện: 3Mặc dù có những lý do trong thế giới thực để có các vòng lặp vô cùng-thông thường bạn không có ý định viết một vòng lặp không bao giờ thực sự lặp. Vòng lặp trong vòngMột khối mã trong vòng lặp cũng giống như bất kỳ mã nào khác bạn có thể viết. Nó có thể là đa dòng, ví dụ. Hoặc nó có thể bao gồm các khối mã khác, bao gồm một vòng lặp riêng biệt khác: 4Bạn có thể đoán có bao nhiêu dòng đầu ra tập lệnh trên (có vẻ vô nghĩa như nó)? Đừng lo lắng, trong các kịch bản trong thế giới thực, các vòng lặp trong các vòng lặp thường sẽ có ý nghĩa hơn, ví dụ: Nó sẽ không liên quan đến việc chỉ trải qua một loạt các số tùy ý. Tuy nhiên, các vòng lặp bên trong vòng lặp có thể trở nên khó hiểu rất nhanh. Nếu chương trình của bạn khó hiểu như ba người bắt giữ, rất có thể có một cách thanh lịch hơn để giải quyết vấn đề. Teasers và bài tậpCác bài tập sau liên quan đến việc kiểm tra các vòng lặp tương đối đơn giản. Mục đích là để đảm bảo bạn có thể tự tin nhận ra một vòng lặp trông như thế nào, ngay cả khi khối mã được thực thi dường như vô nghĩa hoặc vô nghĩa phức tạp. Sửa các tập lệnh nàyNhững ví dụ đơn giản cho vòng lặp này đều chứa các lỗi cú pháp. Xem nếu bạn có thể phát hiện ra chúng: 5 6 7Try để dự đoán đầu ra của các tập lệnh nàyĐây là một bài kiểm tra nhiều hơn để xem bạn có hiểu bài tập biến 8Bạn có thể làm bất cứ điều gì trong một vòng lặp. Thậm chí là toán học: 9Điều gì xảy ra nếu chúng tôi đã xác định một vòng lặp để chạy chính xác 0 lần: 0Đây thực sự chỉ là một bài kiểm tra khác về sự hiểu biết chuyển đổi: 1Chỉ trong trường hợp bạn bị nhầm lẫn bởi cú pháp-hoặc nhiều khả năng, mục đích thực tế của tập lệnh trên-trước hết, lập trình không cần phải có mục đích "trong thế giới thực", theo như trình thông dịch lo lắng. Miễn là cú pháp là tốt, máy tính sẽ chạy chương trình, bất kể nó vô nghĩa như thế nào đối với thế giới thực. Thứ hai, những gì bạn có nghĩa là nhận ra là dù đó là trong một 03 hay một vòng lặp bên trong-câu lệnh, 04 thực hiện chính xác điều đó: nó thêm nội dung của 05 và 06 cùng nhau. Rằng không có tác dụng ở cuối là hậu quả của việc không thực hiện việc gán biến nào: tức là các giá trị của 05 và 06 không bao giờ được chỉ định lại. Do đó, đầu ra nhàm chán ở cuối.Đối với các mục đích của chương trình giảng dạy này, tôi sẽ không bao giờ yêu cầu bạn viết một chương trình vô nghĩa này. Nhưng đó không phải là vấn đề - bạn có thể vô tình viết một chương trình vô nghĩa. Không thể nhìn thấy lỗi logic bên trong vòng lặp đôi khi là kết quả của việc không thoải mái với cú pháp for-loop ở nơi đầu tiên. Những bài tập đó có quá đơn giản không? Tôi đã cố tình làm cho họ dễ dàng. Điều quan trọng là bạn phải hiểu và nhận ra cú pháp của câu lệnh for-loop. Đó không phải là phần phức tạp. Nhưng khi bạn viết các chương trình phức tạp liên quan đến vòng lặp, bạn không muốn cú pháp cơ bản và hoạt động của vòng lặp cho vòng lặp là nguồn gây nhầm lẫn cho bạn. Tiến lênĐọc bài học về phân nhánh có điều kiện (tức là 09).Sau đó xem nếu bạn có thể hoàn thành bài kiểm tra Fizzbuzz khét tiếng. Tại sao cho Loop không hoạt động?Trả lời 530F606F548C35FFB900591F Xóa dấu chấm phẩy ở cuối dòng đầu tiên.Sau đó, nó sẽ lặp từ 100 đến 5. Trong trường hợp bạn muốn kết thúc trên 0 thì nó phải là i> = 0;Nhưng tôi nghĩ rằng bạn muốn nó dừng lại ở mức 5, điều đó là tốt theo cách bạn có nó.Remove the semicolon at the end of the first line. Then it will loop from 100 to 5. In case you want to end on zero then it should be i >=0; but I think you want it to stop at 5 which it is fine the way you have it.
Tại sao tôi không hoạt động trong Python?Vòng lặp trong khi không chạy vì điều kiện không được đáp ứng.Sau khi chạy vòng lặp, 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 trong khi (chỉ cần thêm var i = 1; giữa vòng lặp và vòng lặp trong khi).the condition is not met. After the running the for loop the value of variable i is 5, which is greater than three. To fix this you should reassign the value before running the while loop (simply add var i=1; between the for loop and the while loop).
Không phải trong Python cho Loop?Python trong khi không trong một thời gian không lặp lại trong Python liên tục thực hiện cơ thể của vòng lặp cho đến khi điều kiện để chấm dứt vòng lặp được đáp ứng.Sử dụng cú pháp trong khi không điều kiện với điều kiện làm biểu thức boolean để thực thi cơ thể vòng lặp nếu điều kiện đánh giá là sai.Use the syntax while not condition with the condition as a boolean expression to execute the loop's body if the condition evaluates to False. |