Chương trình được viết để giải quyết vấn đề của người dùng, do đó cần tương tác với người dùng. Tức là chương trình phải nhận input từ người dùng và xử lý theo dữ liệu đầu vào.
Cách nhận input khác nhau tùy kiểu dữ liệu. Chúng ta sẽ thảo luận cách nhận input cho các kiểu dữ liệu khác nhau và cách nhập mảng (array).
Nhập chuỗi (String Input)
Phương thức input() dùng để nhận chuỗi từ người dùng. Người dùng có thể nhập số nhưng sẽ được xem như chuỗi. Chương trình có thể xử lý chuỗi theo logic tùy ý, ví dụ chỉ in ra chuỗi vừa nhập.
Ví dụ
print("Nhập một chuỗi")
a=input()
print("Chuỗi người dùng nhập là",a)Kết quả
Nhập một chuỗi TutorialsPoint Chuỗi người dùng nhập là TutorialsPoint
Chương trình in thông báo, dừng chờ người dùng nhập. Sau khi nhập, câu lệnh in thứ hai thực thi.
Nhập số nguyên (Integer Input)
Nhận input số nguyên bằng cách ép kiểu kết quả của input() sang int: int(input()). Chỉ chấp nhận giá trị số, nhập sai sẽ báo lỗi.
Ví dụ
print("Nhập một số")
a=int(input())
print("Số người dùng nhập là",a)Kết quả
Nhập một số 10 Số người dùng nhập là 10
Nhập số thực (Float Input)
Tương tự, dùng float(input()). Người dùng nhập số nguyên hoặc thực, đều được xử lý như float.
Ví dụ
print("Nhập một số")
a=float(input())
print("Số người dùng nhập là",a)Kết quả
Nhập một số 2.5 Số người dùng nhập là 2.5
Nhập mảng số nguyên (Array of Integers)
Không có cú pháp riêng cho nhập mảng. Thường nhập kích thước trước, rồi dùng vòng lặp nhập từng phần tử.
Ví dụ
print("Nhập số lượng phần tử")
a=int(input())
print("Nhập",a,"phần tử nguyên")
array=[]
for i in range(a):
array.append(int(input()))
print("Mảng người dùng nhập là",array)Kết quả
Nhập số lượng phần tử 5 Nhập 5 phần tử nguyên 1 2 3 4 5 Mảng người dùng nhập là [1, 2, 3, 4, 5]
Ví dụ trên: nhập kích thước mảng, khai báo list rỗng, dùng vòng lặp nhập từng phần tử và append() vào list. Để nhập mảng chuỗi, thay int(input()) bằng input() trong vòng lặp.