Computer >> Hướng Dẫn Máy Tính >  >> Hệ Thống >> Linux

Vòng lặp While trong Python: Giới thiệu và Giải thích

Lập trình (tất nhiên) là về xây dựng thứ giúp người khác. Tuy nhiên, tạo chương trình và phần mềm liên quan nhiều hơn đến tự động hóa tác vụ lặp lại hoặc phức tạp hơn bất cứ điều gì khác. Vòng lặp while của Python cho phép bạn lặp lại các khối mã để tự động hóa nhiều hành động cùng lúc.

Trong bài viết này, chúng tôi chỉ cho bạn cách dùng vòng lặp while của Python. Trước hết, hãy nói về việc while loop làm gì và nơi nó được dùng tốt nhất.

Giới thiệu lệnh while của Python

Trước khi đi vào tạo vòng lặp while, hãy thiết lập bối cảnh. Về cơ bản, lệnh while chạy các khối mã được định nghĩa (một "statement") cho đến khi một điều kiện (một "expression") được đáp ứng.

Điều kiện này được đánh giá trong "Ngữ cảnh Boolean" (Boolean context). Nói cách khác, vòng lặp while chạy mã trong khi expression bằng true và dừng khi nó false.

Chúng tôi chỉ cho bạn nó tối giản như thế nào như một lệnh bên dưới, nhưng bây giờ, hãy hiểu rằng bạn có thể làm rất nhiều với chỉ vài dòng.

Tại sao bạn muốn tạo vòng lặp while với Python

Xa từ việc là một lệnh nhỏ, vòng lặp while xuất hiện khắp nơi trong mã. Xem xét các kịch bản sau:

  • Bạn đang làm một thứ gì đó và cần giữ chương trình chạy cho đến khi người dùng muốn thoát.
  • Bạn xây dựng website dùng Django hoặc Flask và thường kéo dữ liệu từ cơ sở dữ liệu MySQL hoặc MariaDB.
  • Một script bạn viết cần phân tích toàn bộ bảng tính dữ liệu và thực hiện hành động cụ thể.

Vì vậy, vòng lặp while linh hoạt và mạnh mẽ – và chúng sẽ có nhiều ứng dụng hơn thế.

Tuy nhiên, "while" là một lệnh cơ bản hơn so với lệnh lặp khác, như "for". Tóm lại, while dùng để chạy mã trong thời gian dài hơn for. Cái sau làm việc với phạm vi số, vì vậy luôn sẽ có kết thúc tự nhiên cho vòng lặp.

Cách tạo vòng lặp while với Python

Để tạo vòng lặp while, bạn sẽ cần định nghĩa lệnh, sau đó đưa ra một điều kiện có thể đo lường. Thực tế, bạn có thể làm điều này chỉ trong hai dòng:

while True: print("True!")

Tuy nhiên, điều này sẽ gây ra "vòng lặp vô tận" (infinite loop) – tức là cái không bao giờ kết thúc. Bạn được tự do thử, nhưng hãy chắc chắn bạn có thể thoát phiên terminal!

Để đưa ra ví dụ về vòng lặp game, bạn có thể chọn làm như sau:

running = '-1'
while running != 1:
    run_game()

Hãy phân tích điều này. Trước tiên chúng ta định nghĩa một biến với giá trị cụ thể. Thường bạn sẽ chọn thứ gì đó không có cơ hội xuất hiện trong chương trình của bạn.

Tiếp theo, chúng ta bắt đầu vòng lặp while và dùng biến trong expression. Ở đây chúng ta nói "bắt đầu vòng lặp này nếu 'running' không bằng '1'." Tất nhiên, "running" không bằng, nên vòng lặp gọi hàm run_game(). Bên trong run_game(), bạn sẽ bao gồm biến và thay đổi giá trị nếu bạn muốn thoát khỏi nó.

Tuy nhiên, điều này chỉ hoàn thành một nửa công việc. Để thoát khỏi vòng lặp while, bạn có thể lồng các câu lệnh "if" bên trong vòng lặp while và dùng lệnh break. Xem ví dụ này:

list = ['a', 'b', 'c']
while True:
    if not list: break
    print(list.pop(-1))

Ở đây, vòng lặp while bắt đầu là True và lấy item từ list để in chúng. Khi list rỗng, expression trở thành False, và vòng lặp while break.

Kết luận

Tự động hóa mã của bạn là một cách để tăng hiệu quả của nó. Hơn nữa, bạn có thể xây dựng hành động phức tạp và给最终用户强大的功能。Python的while循环是一匹野马,但一旦驯服,它将成为你工作流程的主食。

Nếu bạn quan tâm đến các chủ đề lập trình Python khác, chúng tôi đã từng xuất bản hướng dẫn về Python 3. Bạn có đang cân nhắc dùng vòng lặp while của Python, và nếu có, cho ứng dụng gì? Hãy cho chúng tôi biết trong phần bình luận bên dưới!