Đọc đầu vào bàn phím
Nhiều chương trình có tính tương tác. Hỗ trợ tính tương tác có nghĩa là bạn có một chương trình chạy khác nhau tùy thuộc vào đầu vào. Người nhập dữ liệu vào chương trình thường là người dùng, nhưng cũng có thể là một chương trình khác. Có nhiều cách để gửi dữ liệu vào chương trình; hai cách phổ biến là thông qua giao diện đồ họa hoặc bảng điều khiển.
Đầu vào của người dùng
Để đọc dữ liệu đầu vào từ bàn phím, Python cung cấp input()hàm. input()đọc những gì người dùng nhập trên bàn phím và trả về dưới dạng chuỗi. Sau đây là ví dụ kết hợp input()và print()để lấy tên của một người và hiển thị trên màn hình:
name = input('Enter your name:')
print(name)
Chuỗi được truyền dưới dạng đối số cho inputhàm là lời nhắc mà người dùng sẽ thấy. Trong ví dụ này, bạn yêu cầu người dùng nhập tên của họ ('Nhập tên của bạn'). Sau khi người dùng nhập tên và nhấn Enter, inputhàm sẽ trả về. Giá trị trả về của hàm là văn bản mà người dùng đã nhập và văn bản đó được gán cho biến có tên name. nameSau đó, biến được sử dụng làm đầu vào hoặc đối số cho printhàm, hàm sẽ xuất ra tên mà người dùng đã nhập.
Bạn cũng có thể gọi inputhàm mà không cần tham số:
print('What is your name?')
name = input()
print(name)
Chương trình này sẽ hoạt động gần giống như chương trình đầu tiên. Sự khác biệt là print(theo mặc định) thêm một dòng mới vào đầu ra.
Đọc số làm đầu vào
Hàm inputluôn trả về giá trị đã nhập dưới dạng chuỗi (văn bản). Lựa chọn này có ý nghĩa vì người dùng có thể nhập bất kỳ giá trị nào họ thích. Ngay cả khi đầu vào là một số hợp lệ, nó vẫn được trả về dưới dạng kiểu chuỗi từ inputhàm. Ví dụ:
x = input('Enter a number: ')
print(type(x))
Chạy mã này và nhập giá trị '5' sẽ hiển thị <class 'str'>, mặc dù giá trị đó là số. Để chuyển giá trị thành một biến số nguyên thực, bạn có thể sử dụng hàm int():
x = int(input('Enter a number: '))
print(type(x))
Mã này sẽ xuất ra <class 'int'>giá trị '5'. Bạn có thể sử dụng floathàm theo cách tương tự nếu bạn mong đợi một thành phần phân số.
Quan trọng
Nếu đầu vào không phải là số và bạn truyền nó vào int()hàm thì sao? Như bạn có thể mong đợi, đây sẽ là lỗi và sẽ gây ra lỗi thời gian chạy. Chương trình sẽ kết thúc tại câu lệnh này; bạn có thể tự mình thử trong bảng điều khiển tương tác Python. Chúng tôi sẽ đề cập đến nhiều giải pháp khác nhau để xử lý các loại lỗi này trong các mô-đun trong tương lai.
Chuyển đổi số thành chuỗi
Bạn cũng có thể đi theo hướng ngược lại. str()Phương pháp này sẽ lấy một giá trị số nguyên hoặc số thực và biến nó thành một chuỗi. str()Cần phải gọi phương pháp này nếu bạn muốn ví dụ mã bên dưới hoạt động. Việc chuyển đổi đảm bảo số nguyên, ở dạng chuỗi của nó, được nối với chuỗi bên trái.
x = 5
print('The number is ' + str(x))