Làm thế nào để bạn lấy hai số nguyên làm đầu vào trong cùng một dòng trong python?

Đó 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]]

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

Bạn có thể sử dụng khả năng hiểu danh sách để lấy n đầu vào trong một dòng trong Python. Chuỗi đầu vào được chia thành n phần, sau đó danh sách comp tạo một danh sách mới bằng cách áp dụng int() cho mỗi phần

Ví dụ lấy n đầu vào trong một dòng trong Python

Mã ví dụ đơn giản

n = 2  # how many numbers to accept
numbers = [int(num) for num in input().split(" ", n-1)]

print(numbers)

đầu ra

Làm thế nào để bạn lấy hai số nguyên làm đầu vào trong cùng một dòng trong python?

Đoạn mã sau sẽ ánh xạ đầu vào một dòng được phân tách bằng khoảng trắng thành một danh sách các số nguyên

lst = list(map(int, input().split()))

print(lst)

đầu ra

1 2 3
[1, 2, 3]

Làm cách nào để lấy nhiều đầu vào của các loại dữ liệu khác nhau trong một dòng trong Python?

Câu trả lời. Ví dụ lấy 2 giá trị đầu vào

x, y = input("Enter a two value: ").split()

print(x, y)

đầu ra

Nhập hai giá trị. 1 X
1 X

HOẶC LÀ

________số 8_______

Hãy bình luận nếu bạn có bất kỳ nghi ngờ và đề xuất nào về chủ đề đầu vào Python này

Ghi chú. IDE. PyCharm 2021. 3. 3 (Phiên bản cộng đồng)

cửa sổ 10

Trăn 3. 10. 1

Tất cả các Ví dụ về Python đều nằm trong Python 3, vì vậy có thể nó khác với python 2 hoặc các phiên bản nâng cấp

Làm thế nào để bạn lấy hai số nguyên làm đầu vào trong cùng một dòng trong python?

Rohit

Bằng cấp về Khoa học Máy tính và Kỹ sư. Nhà phát triển ứng dụng và có kinh nghiệm về nhiều ngôn ngữ lập trình. Đam mê công nghệ & thích học hỏi kỹ thuật