Python có nhiều công cụ và tính năng có thể giúp bạn tự động hóa các tác vụ lặp đi lặp lại.
Một trong những tính năng đó là vòng lặp.
Vòng lặp là một tính năng hữu ích và được sử dụng thường xuyên trong tất cả các ngôn ngữ lập trình hiện đại.
Vòng lặp rất hữu ích khi bạn muốn tự động hóa một tác vụ lặp lại cụ thể hoặc ngăn bạn sao chép và dán cùng một mã trong chương trình của mình.
Các vòng lặp trong lập trình máy tính lặp lại cùng một khối mã hoặc cùng một chuỗi hướng dẫn nhiều lần cho đến khi một điều kiện được đáp ứng hoặc cho đến khi một điều kiện không còn được đáp ứng.
Vì vậy, nhìn chung, các vòng lặp giúp bạn không phải viết đi viết lại cùng một đoạn mã.
Có hai loại vòng lặp được tích hợp trong Python:
Trong bài viết này, bạn sẽ học cách xây dựng while
vòng lặp.
Đây là những gì chúng tôi sẽ đề cập:
- cái gì là
while
vòng?- Cú pháp của một
while
vòng - Ví dụ về một
while
vòng
- Cú pháp của một
- cái gì là
while True
vòng?
A là gì while
Vòng lặp trong Python? Định nghĩa cho người mới bắt đầu
Một while
vòng lặp lặp lại một khối mã với số lần không xác định cho đến khi một điều kiện không còn được đáp ứng. for
mặt khác, các vòng lặp lặp lại một khối mã một số lần cố định.
Vì vậy, một while
vòng lặp rất hữu ích khi bạn không biết mình muốn một khối mã thực thi bao nhiêu lần trước đó.
Một while
vòng lặp lặp lại khối mã dựa trên một điều kiện Boolean nhất định.
Một điều kiện Boolean là một điều kiện đánh giá một trong hai True
hoặc False
.
Một while
vòng lặp sẽ luôn kiểm tra điều kiện trước khi chạy. Nếu điều kiện đánh giá là True
thì vòng lặp sẽ chạy mã trong phần thân của vòng lặp và tiếp tục chạy mã trong khi điều kiện vẫn còn 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 nữa. True
.
Hãy lấy một ví dụ giả định.
Bạn có thể yêu cầu người dùng gửi từ khóa bí mật để họ có thể truy cập vào một phần cụ thể trên trang web của bạn.
Nói rằng để họ có thể xem một số nội dung, trước tiên họ phải nhập từ khóa ‘Python’.
Để làm điều này, bạn sẽ yêu cầu họ nhập từ khóa đó. Điều đó nói rằng, bạn không biết người dùng sẽ nhập sai từ khóa bao nhiêu lần.
Mỗi khi họ nhập sai, bạn tiếp tục nhắc họ nhập từ khóa đúng. Và chỉ cần họ nhập sai từ khóa, bạn sẽ không cho phép họ tiếp tục.
Cuối cùng khi họ nhập từ khóa ‘Python’, bạn sẽ cho phép họ xem nội dung đó, bạn sẽ ngừng nhắc họ và khối mã đó sẽ ngừng thực thi.
Để làm điều gì đó tương tự như ví dụ này, bạn sẽ cần sử dụng Python’s while
vòng.
Làm Thế Nào Để Viết Một while
Vòng lặp trong Python – Phân tích cú pháp cho người mới bắt đầu
Cú pháp chung để viết một while
vòng lặp trong Python trông như thế này:
while condition:
body of while loop containing code that does something
Hãy chia nhỏ nó ra:
- Bạn bắt đầu
while
vòng lặp bằng cách sử dụngwhile
từ khóa. - Sau đó, bạn thêm một điều kiện sẽ là một biểu thức Boolean. Một biểu thức Boolean là một biểu thức đánh giá một trong hai
True
hoặcFalse
. - Điều kiện được theo sau bởi một dấu hai chấm,
:
. - Trên một dòng mới, bạn thêm một mức thụt đầu dòng. Nhiều trình soạn thảo mã sẽ tự động làm điều này cho bạn. Ví dụ: khi sử dụng trình soạn thảo Visual Studio Code với phần mở rộng Python, ngay sau khi bạn viết dấu hai chấm từ bước trước và nhấn
Enter
, nó sẽ tự động thụt lề mã của bạn với mức độ thụt lề phù hợp. Mức thụt đầu dòng này là cách Python biết rằng các câu lệnh mã bạn sẽ viết được liên kết vớiwhile
bản tường trình. - Sau đó, mã bạn muốn chạy sẽ nằm trong phần thân của
while
bản tường trình. - Trong khi điều kiện đánh giá là
True
mã bên trong phần thân củawhile
vòng lặp sẽ thực thi. Mã bên trong phần thân sẽ tiếp tục thực thi cho đến khi điều kiện không còn được đáp ứng và ước tính thànhFalse
.
Ví dụ về A là gì while
Vòng lặp trong Python?
Bây giờ, hãy viết ví dụ mà tôi đã đề cập trước đó bằng cách sử dụng vòng lặp while của Python.
Đầu tiên, tôi sẽ lưu trữ từ khóa bí mật Python
trong một biến có tên secret_keyword
.
secret_keyword = "Python"
Sau đó, tôi sẽ yêu cầu người dùng nhập từ khóa bí mật bắt buộc mà họ phải biết để truy cập phần còn lại của nội dung.
Để làm điều này, tôi sẽ sử dụng input()
chức năng và lưu trữ kết quả trong một biến có tên user_input
.
user_input = input("Please enter the secret keyword: ")
Một điều cần lưu ý ở đây là thông tin nhập của người dùng theo mặc định phân biệt chữ hoa chữ thường, có nghĩa là nếu người dùng nhập ‘python’ thay vì ‘Python’ thì họ vẫn không thể tiếp tục.
Để khắc phục điều này, bạn có thể sử dụng một phương thức chuỗi như .capitalize()
để viết hoa chữ cái đầu tiên của từ người dùng nhập vào.
user_input = input("Please enter the secret keyword: ").capitalize()
Tiếp theo, đã đến lúc xây dựng while
vòng.
Tôi sẽ kiểm tra xem biến user_input
Là không phải bằng nội dung của biến secret_keyword
.
Về cơ bản, tôi đang kiểm tra xem những gì người dùng đã nhập không bằng chuỗi ‘Python’ hay không.
Để viết điều kiện này bằng Python, tôi sẽ sử dụng !=
toán tử, kiểm tra sự bất bình đẳng.
secret_keyword = "Python"
user_input = input("Please enter the secret keyword: ").capitalize()
while user_input != secret_keyword:
Bên trong cơ thể của while
vòng lặp, tôi sẽ lại nhắc người dùng nhập từ khóa bí mật.
secret_keyword = "Python"
user_input = input("Please enter the secret keyword: ").capitalize()
while user_input != secret_keyword:
user_input = input("Please enter the secret keyword: ").capitalize()
Cách thức hoạt động của nó là nếu người dùng nhập chuỗi ‘Python’ thì vòng lặp sẽ kết thúc và chương trình sẽ không chạy nữa. Tuy nhiên, nếu chuỗi mà người dùng nhập vào không bằng ‘Python’, vòng lặp sẽ tiếp tục.
Vì vậy, nếu user_input
Là không phải tương đương với secret_keyword
vòng lặp sẽ tiếp tục thực hiện.
Và không có số lần cài đặt này sẽ chạy rồi dừng, điều đó có nghĩa là miễn là người dùng không nhập chuỗi ‘Python’, while
vòng lặp sẽ tiếp tục thực hiện. Điều này là do điều kiện tôi đặt tiếp tục đánh giá thành True
.
Please enter the secret keyword: Hello
Please enter the secret keyword: Hi
Please enter the secret keyword: CSS
Please enter the secret keyword: css
Please enter the secret keyword:
..
..
..
Nếu bạn đang theo dõi và muốn kết thúc chương trình, hãy gõ Control C
để thoát khỏi vòng lặp vô tận. Một vòng lặp vô hạn là khi một vòng lặp không bao giờ ngừng thực thi.
Bây giờ, nếu tôi chạy lại chương trình và cuối cùng nhập đúng từ khóa bí mật, vòng lặp sẽ thoát và mã sẽ ngừng chạy.
Please enter the secret keyword: Java
Please enter the secret keyword: Python
Và điều này xảy ra nếu tôi cũng nhập ‘python’ nhờ vào capitalize()
phương pháp:
Please enter the secret keyword: java
Please enter the secret keyword: python
Vòng lặp kết thúc vì điều kiện không còn đánh giá thành True
nữa không.
A là gì while True
Vòng lặp trong Python?
Trước đó, bạn đã biết vòng lặp vô hạn là gì.
Về cơ bản, một while True
vòng lặp là một vòng lặp liên tục True
và do đó chạy vô tận. Nó sẽ không bao giờ dừng lại cho đến khi bạn buộc nó phải dừng lại.
#this creates an infinite loop
while True:
print("I am always true")
Như bạn đã thấy trước đó, cách để thoát khỏi điều này là gõ Control C
.
Một cách khác để thoát khỏi điều này một cách rõ ràng là sử dụng break
bản tường trình.
Từ True
sẽ luôn luôn đánh giá True
và do đó thực hiện lặp đi lặp lại, các break
câu lệnh sẽ buộc vòng lặp dừng lại khi cần.
Hãy lấy ví dụ sau:
i = 0
# this creates an infinite loop
while True:
print(i)
i = i + 1
Trong ví dụ này, i
sẽ tiếp tục tăng thêm một lần nữa – không có điều kiện nào ngăn cản nó tăng lên kể từ đó True
sẽ luôn luôn đánh giá True
.
Để ngăn điều này trở thành một vòng lặp vô hạn, trước tiên tôi giới thiệu một if
bản tường trình.
Các if
câu lệnh kiểm tra xem i
bằng 5
. Nếu đúng như vậy, thì vòng lặp sẽ kết thúc nhờ break
tuyên bố bên trong if
câu lệnh, về cơ bản yêu cầu vòng lặp dừng lại.
i = 0
while True:
print(i)
i = i + 1
if i == 5:
break
Phần kết luận
Và bạn có nó rồi đấy! Bây giờ bạn đã biết cách viết while
và while True
vòng lặp trong Python.
Tôi hy vọng bạn tìm thấy hướng dẫn này hữu ích.
Để tìm hiểu thêm về ngôn ngữ lập trình Python, hãy xem chứng chỉ Python của freeCodeCamp.
Bạn sẽ bắt đầu từ những điều cơ bản và học theo cách tương tác và thân thiện với người mới bắt đầu. Cuối cùng, bạn cũng sẽ xây dựng năm dự án để đưa vào thực tế và giúp củng cố những gì bạn đã học được.
Cảm ơn bạn đã đọc và mã hóa hạnh phúc!