Người dùng nhập liệu với hàm input() trong Python

225

Bài viết được sự cho phép của tác giả Kien Dang Chung

Video trong bài viết

Trong một chương trình, chúng ta cần có sự tương tác giữa người dùng và chương trình máy tính. Từ các bài viết đầu tiên đến giờ chúng ta đã biết đến hàm print() để in một thông báo ra màn hình cho người dùng. Vậy làm cách nào để người dùng có thể đưa dữ liệu vào chương trình Python trên máy tính?

  Nên dùng gì thay cho input number
  Ràng buộc dữ liệu input với HTML5

Xem thêm nhiều việc làm Python hấp dẫn trên TopDev

Hàm input()

Hàm input() trong Python sẽ dừng chương trình lại cho đến khi phím Enter được nhấn, nó trả về một chuỗi ký tự do người dùng nhập vào từ bàn phím (trước khi bấm Enter). Cú pháp của hàm input():

input([promt])

Trong đó [promt] là thông báo sẽ hiển thị ra màn hình, gợi ý thông tin người dùng cần nhập vào chương trình.

Ví dụ 1:

my_name = "Jose"
your_name = input("Enter your name:")

print(f"Hello {your_name}. My name is {my_name}")

Chú ý: Hàm input() trả về một chuỗi ký tự, ngay cả khi người dùng nhập vào một số thì nó cũng chuyển đổi thành chuỗi. Do đó, khi thực hiện các tính toán trên dữ liệu nhập vào, bạn cần chuyển đổi dạng từ chuỗi thành số.

Ví dụ 2:

age = input("Enter your age: ")
x = int(age)
print(f"You have lived for {x * 12} months.")

Trong ví dụ trên, chúng ta đã chuyển đổi chuỗi người dùng nhập vào thành một số nguyên thông qua hàm int(). Trong một số bài trước, bạn đã biết đến hàm str() để chuyển đổi một số thành một chuỗi.

Một số chú ý khi viết code:

  1. Tên biến nên sử dụng là các từ gợi nhớ, mô tả về nội dung biến, tránh đặt tên biến theo kiểu vô nghĩa như xxx, yyy…
  2. Nên tránh sử dụng biến bừa bãi, ví dụ biến chỉ dùng để tính toán 1 lần mà không sử dụng lại ở đâu khác trong code.

Với chú ý trên, đoạn code trong Ví dụ 2 có thể viết lại một cách tường minh như sau:

age = int(input("Enter your age: "))
months = age * 12
print(f"You have lived for {months} months.")

Trong ví dụ này, chúng ta có các hàm Python viết lồng vào nhau (nested), int(input()). Python cho phép viết các hàm lồng vào nhau nhiều cấp, tuy nhiên chúng ta chỉ nên sử dụng các hàm lồng nhau dưới 3 cấp để dễ đọc, bug lỗi cũng như bảo trì sau này.

Code trên Repl.it, bạn có thể thực hiện các đoạn code Python trực tuyến.

Bài viết gốc được đăng tải tại allaravel.com

Có thể bạn quan tâm:

Xem thêm Việc làm IT hấp dẫn trên TopDev