Vòng lặp for với đầu vào của người dùng 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í 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 trong khi Python với câu lệnh break

Python while Loop với câu lệnh continue

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 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

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

Phần 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

Lần trước, chúng ta đã tạo một hàm đơn giản để chuyển đổi độ F sang độ C. Điều này đơn giản đến mức chúng ta có thể thực hiện mà không cần in “Xin chào thế giới” ra màn hình. Lần này chúng ta sẽ xem xét danh sách, vòng lặp và đầu vào của người dùng

Chúng ta sẽ làm việc với một chương trình đồ chơi khác, trong đó người dùng sẽ được nhắc chọn món ăn yêu thích của họ và máy tính, trong nỗ lực làm hài lòng người bạn mới quen của mình, sẽ nói rằng đó cũng là món ăn yêu thích của nó. Hãy đi sâu vào và xem mã. Đừng lo lắng nếu có những phần bạn không hiểu, chúng tôi sẽ xem xét từng phần

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

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

Phần này chắc đã quen thuộc với chương trình trước của chúng ta, chúng ta đang tạo một hàm gọi là fav_food. Trống [] có nghĩa là chúng tôi không cung cấp bất kỳ tham số nào cho chức nă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}']
3

Ở đây chúng tôi đang tạo một biến có tên là thực phẩm, tuy nhiên, thay vì lưu trữ một giá trị trong hộp của chúng tôi, chúng tôi đang lưu trữ nhiều giá trị. Trên thực tế, chúng tôi đang lưu trữ một danh sách các giá trị. Trong Python, sử dụng dấu ngoặc [] cho biết chúng tôi đang tạo danh sách các mục. Các danh sách được phân tách bằng dấu phẩy và có thể chứa nhiều loại dữ liệu khác nhau. Hãy nghĩ về nó như nhiều hộp trong hộp lớn hơn của bạn. Bạn thậm chí có thể lưu trữ danh sách trong danh sách của mình [thật điên rồ, tôi biết]

Trong trường hợp của chúng ta, mỗi phần tử của danh sách là một chuỗi ký tự [được gọi là kiểu dữ liệu chuỗi]. Các phần tử có thể được tham chiếu bằng cách chỉ định vị trí của chúng trong danh sách. Đây là thời điểm tốt để đề cập rằng trong các ngôn ngữ lập trình, đôi khi bạn bắt đầu đếm từ con số 0 và Python là một trong những ngôn ngữ đó. Ví dụ: nếu bạn muốn loại “Salad” ra khỏi danh sách trên, bạn sẽ tham khảo

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

Bạn sẽ thấy “Salad” được in trên màn hình

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

Đây là vòng lặp của chúng tôi. Trong trường hợp này, đó là một vòng lặp for và sử dụng một hàm đặc biệt có sẵn của Python có tên là enumerate[]. Điều này sẽ thực hiện hai việc, thứ nhất là nó sẽ lặp lại danh sách [di chuyển từ mục này sang mục tiếp theo] và giữ số lượng chỉ mục của mục đó [được lưu trữ trong biến i] và thứ hai, nó sẽ theo dõi mục hiện tại

Phần for của dòng sẽ lặp lại cho mọi mục trong danh sách và sẽ chạy bất kỳ mã nào trong vòng lặp. Trong trường hợp này, chúng tôi sẽ in chỉ mục hiện tại [+1, vì chúng tôi bắt đầu từ 0] cũng như mục hiện tại trong danh sách. Hãy xem cái này trông như thế nào

In các mục trong danh sách với enumerate[]

Như bạn có thể thấy, mỗi mục trong danh sách được in, cùng với chỉ mục của nó trong danh sách [+1]

Tiếp theo, chúng ta cần lấy thông tin đầu vào của người dùng để tìm ra món ăn yêu thích của họ là gì

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

Chúng tôi tạo một biến và thay vì chỉ định giá trị sẽ được lưu trữ là gì, chúng tôi gọi một hàm tích hợp sẵn khác, trong ví dụ của chúng tôi, lấy một đối số là lời nhắc thông báo được in ra màn hình. Mọi thông tin do người dùng cung cấp sẽ được lưu trữ trong biến mine. Chẳng hạn, nếu bạn gõ số 2 và nhấn enter thì số của tôi sẽ lưu giá trị chuỗi “2”

Cuối cùng, chúng tôi cần in thông báo lại cho người dùng, tuyên bố rằng món ăn yêu thích của họ cũng là của chúng tôi

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

Có một số điều kỳ lạ xảy ra ở đây. Hãy nhìn vào mảnh đầu tiên

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

Ở đây, chúng tôi đang tìm kiếm một giá trị trong danh sách của mình và vị trí mà chúng tôi đang tìm kiếm sẽ được tính bằng cách truyền giá trị do người dùng cung cấp dưới dạng số nguyên [một số cho mục đích của chúng tôi] và trừ đi 1. Điều này rất quan trọng vì mặc dù chúng tôi không thích bắt đầu từ 0 cho mục đích đếm, nhưng danh sách luôn bắt đầu từ 0. Chúng ta hãy xem một số mã đang chạy

In Lựa chọn thực phẩm của người dùng

Có một vài điều được hiển thị ở trên. Đầu tiên, nếu chúng tôi không truyền đầu vào của người dùng, trình thông dịch sẽ coi đó là một chuỗi và gây ra TypeError. Tiếp theo, nếu chúng tôi không trừ 1 từ đầu vào của người dùng, chúng tôi sẽ nhận được mặt hàng thực phẩm không chính xác. Cuối cùng, bằng cách truyền tới một số nguyên và trừ đi 1, chúng tôi nhận được thực phẩm thực tế mà người dùng đã chọn

Sau khi có thông tin đó, chúng ta có thể nối [hoặc nối] món ăn với câu “cũng là món ưa thích của tôi”. Trong Python, dấu cộng + có thể được sử dụng để cộng [các số đã cho] hoặc để nối các chuỗi thành một

Bây giờ chúng ta hãy đặt mọi thứ lại với nhau và xem kết quả cuối cùng

Tôi không nghĩ máy tính trung thực

Độc giả tò mò có thể mở rộng ví dụ này để cho phép máy tính chọn một loại thực phẩm ngẫu nhiên, có thể là chủ đề cho phần hướng dẫn tiếp theo;]

Nếu bạn thích nội dung này, vui lòng xem xét hỗ trợ tại Patreon [https. //www. bảo trợ. com/TheCyberBasics]

Một lưu ý từ nhóm tiếng Anh đơn giản

Bạn có biết rằng chúng tôi có bốn ấn phẩm và một kênh YouTube không? . io — thể hiện tình yêu bằng cách theo dõi các ấn phẩm của chúng tôi và đăng ký kênh YouTube của chúng tôi

Chủ Đề