Bạn có thể lưu trữ tất cả các đầu vào này trong danh sách có tên là inputs
bằng cách sử dụng cách sau
inputs = list[]
for idx in range[1, 5]:
inputs.append[input[f"Enter the choice of user {idx}: "]]
Thời gian kiểm tra bằng cách sử dụng ipython
In [0]: inputs = list[]
...: for idx in range[1, 6]:
...: inputs.append[input[f"Enter the choice of user {idx}: "]]
Enter the choice of user 1: 12
Enter the choice of user 2: 1234
Enter the choice of user 3: 54326
Enter the choice of user 4: 3232
Enter the choice of user 5: 55
In [1]: print[inputs]
['12', '1234', '54326', '3232', '55']
Nhà phát triển thường muốn người dùng nhập nhiều giá trị hoặc đầu vào trong một dòng. Trong C++/C, người dùng có thể lấy nhiều giá trị đầu vào trong một dòng bằng scanf nhưng trong Python, người dùng có thể lấy nhiều giá trị hoặc đầu vào trong một dòng bằng hai phương thức
- Sử dụng phương thức split[]
- Sử dụng khả năng hiểu Danh sách
Sử dụng phương thức split[].
Chức năng này giúp lấy nhiều thông tin đầu vào từ người dùng. Nó ngắt đầu vào đã cho bằng dấu phân cách đã chỉ định. Nếu dấu phân cách không được cung cấp thì bất kỳ khoảng trắng nào cũng là dấu phân cách. Nói chung, người dùng sử dụng phương thức split[] để tách chuỗi Python nhưng người dùng có thể sử dụng nó để lấy nhiều đầu vào.
cú pháp
đầu vào[]. split[dấu phân cách, maxsplit]
Ví dụ.
# Chương trình Python hướng dẫn cách
# nhiều đầu vào bằng cách sử dụng phân tách
# lấy hai giá trị đầu vào cùng một lúc
x, y = input["Nhập hai giá trị. "]. split[]
print["Số nam. ", x]
print["Số bạn nữ. ", y]
print[]
# lấy ba giá trị đầu vào cùng một lúc
x, y, z = input["Nhập ba giá trị. "]. split[]
print["Tổng số sinh viên. ", x]
print["Số nam là. ", y]
print["Số bạn nữ là. ", z]
print[]
# lấy hai giá trị đầu vào cùng một lúc
a, b = input["Nhập hai giá trị. "]. split[]
print["Số đầu tiên là {} và số thứ hai là {}". định dạng[a, b]]
print[]
# lấy nhiều đầu vào cùng lúc
# và truyền kiểu bằng hàm list[]
x = list[map[int, input[" . "]. split[]]]
print["Danh sach sinh vien. ", x]
Đầu ra.
Sử dụng hiểu Danh sách.
Hiểu danh sách là một cách hay để xác định và tạo danh sách trong Python. Chúng ta có thể tạo các danh sách giống như các câu lệnh toán học chỉ trong một dòng. Nó cũng được sử dụng để nhận nhiều đầu vào từ người dùng.
Thí dụ
# chương trình Python đang hiển thị
# cách nhập nhiều dữ liệu đầu vào
# bằng cách sử dụng khả năng hiểu Danh sách
# lấy hai giá trị đầu vào cùng một lúc
x, y = [int[x] for x in input["Nhập hai giá trị. "]. split[]]
print["Số đầu tiên là. ", x]
print["Số thứ hai là. ", y]
print[]
# lấy ba giá trị đầu vào cùng một lúc
x, y, z = [int[x] for x in input["Nhập ba giá trị. "]. split[]]
print["Số đầu tiên là. ", x]
print["Số thứ hai là. ", y]
print["Số thứ ba là. ", z]
print[]
# lấy hai giá trị đầu vào cùng một lúc
x, y = [int[x] for x in input["Nhập hai giá trị. "]. split[]]
print["Số đầu tiên là {} và số thứ hai là {}". định dạng[x, y]]
print[]
# lấy nhiều đầu vào cùng một lúc
x = [int[x] for x in input["Nhập nhiều giá trị. "]. split[]]
print["Số danh sách là. ", x]
Đầu ra.
Ghi chú. Các ví dụ trên lấy đầu vào được phân tách bằng dấu cách. Trong trường hợp chúng tôi muốn lấy đầu vào được phân tách bằng dấu phẩy [, ], chúng tôi có thể sử dụng như sau
Đó là một vấn đề phổ biến cho người mới bắt đầu. Nó có thể hỏi trong cuộc phỏng vấn. Đôi khi, các nhà phát triển cũng cần lấy nhiều đầu vào trong một dòng. Có thể dễ dàng thực hiện trong C/C++ bằng phương thức scanf[]. Tuy nhiên, Python cung cấp 2 phương thức giúp chúng ta lấy nhiều giá trị hoặc nhập vào một dòng
- Sử dụng phương thức split[]
- Sử dụng danh sách hiểu
Trong hướng dẫn này, chúng ta sẽ tìm hiểu cách lấy nhiều đầu vào trong một dòng bằng nhiều phương pháp khác nhau
Sử dụng phương thức split[]
Phương thức split[] rất hữu ích để nhận nhiều đầu vào từ người dùng. Cú pháp được đưa ra dưới đây
Cú pháp -
Thông số -
- Tham số dấu tách ngắt đầu vào theo dấu tách đã chỉ định. Theo mặc định, khoảng trắng là dấu phân cách được chỉ định
Phương thức split[] được sử dụng để tách chuỗi Python, nhưng chúng ta có thể sử dụng nó để lấy nhiều giá trị
Hãy hiểu ví dụ sau
Thí dụ -
đầu ra
Enter three values: David Warner MCA Enter Your First Name: David Enter Your Last Name: Warner Enter Your Class: Warner Enter three values: 100 67 33 Total number of students: 100 Number of passed students : 67 Number of failed students : 33 Enter four values: 1 2 3 4 First number is 1, second number is 2 third is 3 and fourth is 4 Enter multiple values: 4 6 7 2 4 List of students: [4, 6, 7, 2, 4]
Giải trình -
Trong đoạn mã trên, chúng tôi lấy nhiều đầu vào trong một dòng. Các giá trị được phân tách bằng khoảng trắng, bạn có thể sử dụng dấu phẩy [,] hoặc bất kỳ thứ gì
Sử dụng danh sách hiểu
Chúng ta cũng có thể lấy các giá trị và chuyển đổi chúng thành danh sách bằng cách sử dụng phương thức map[] cùng với phương thức split[]. Hãy hiểu ví dụ sau
Ví dụ -2
đầu ra
Enter multiple values: 4 6 7 2 4 List of values: [4, 6, 7, 2, 4]
Giải trình -
Chúng tôi đã sử dụng khoảng trắng làm dấu phân cách trong đoạn mã trên và lấy đầu vào trong một dòng và nhập vào danh sách
Lấy đầu vào ma trận từ người dùng
Ma trận là một mảng hình chữ nhật, hoặc chúng ta có thể nói sắp xếp dữ liệu hoặc số theo hình chữ nhật. Ma trận có thể lấy bất kỳ giá trị nào như giá trị nguyên, giá trị động, chuỗi, số phức, v.v. Các giá trị được đặt theo chiều ngang được gọi là hàng, trong khi các giá trị theo chiều dọc được gọi là 'cột'. Nếu ma trận gồm r số hàng và c số cột thì bậc của ma trận sẽ là r x c
Thí dụ -
đầu ra
Enter the number of rows:3 Enter the number of columns:3 Enter the entries row-wise: 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9
Ở trên có thể được thực hiện trong một dòng như dưới đây
Thí dụ -
đầu ra
Enter the number of rows:3 Enter the number of columns:3 1 2 3 4 5 6 7 8 9 1 2 3 4 5 6 7 8 9
Sử dụng hàm map[] và Thư viện numpy
Có một thư viện phổ biến tên là Numpy có thể sử dụng cho bất kỳ tính toán khoa học nào. Nó cung cấp sự hỗ trợ rộng rãi cho các mảng đa chiều. Chúng tôi sẽ sử dụng thư viện này cho ma trận đầu vào. Hãy hiểu ví dụ sau
Thí dụ -
đầu ra
Enter the number of rows:2 Enter the number of columns:2 Enter the entries in a single line separated by space: 1 2 3 1 [[1 2] [3 1]]
Sự kết luận
Trong hướng dẫn này, chúng tôi đã chỉ ra các cách khác nhau để lấy nhiều giá trị từ người dùng. Nó tiết kiệm số lượng dòng mã và khá dễ sử dụng. Chúng tôi cũng đã mô tả tương tự như một ma trận nơi chúng tôi có thể tạo ma trận do người dùng xác định