Đó 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
Đôi khi trong khi mã hóa bằng Python, bạn sẽ cần lấy một danh sách làm đầu vào. Mặc dù điều này thoạt nghe có vẻ đơn giản, nhưng nó thường được coi là một nhiệm vụ phức tạp cần hoàn thành đối với người mới bắt đầu. Bài viết này sẽ cho bạn biết cách nhập một danh sách trong Python
Khóa học đầy đủ về Python – Học Python trong 12 giờ. Hướng dẫn Python cho người mới bắt đầu. Edureka
Khóa học đầy đủ về Python của Edureka này giúp bạn trở thành bậc thầy về Khái niệm lập trình Python cơ bản và nâng cao
Các gợi ý sau đây sẽ được đề cập trong bài viết này,
Vì vậy, chúng ta hãy bắt đầu sau đó,
Nhập một danh sách trong Python
Như bạn có thể đã biết, để chấp nhận đầu vào từ người dùng trong Python, chúng ta có thể sử dụng hàm input[]. Khi được sử dụng, nó cho phép lập trình viên chấp nhận một chuỗi, số nguyên hoặc thậm chí một ký tự làm đầu vào từ người dùng. Nhưng khi nói đến việc chấp nhận danh sách làm đầu vào, cách tiếp cận mà chúng tôi tuân theo hơi khác một chút
Bài viết về cách nhập Danh sách trong Python này sẽ giải quyết các vấn đề chính cần quan tâm
Tìm hiểu khóa đào tạo Python của chúng tôi tại các thành phố/quốc gia hàng đầu
Chấp nhận danh sách số làm đầu vào trong Python
Hãy xem chương trình ví dụ bên dưới, chương trình này chấp nhận danh sách các số làm đầu vào trong Python
input_string = input["Enter a list element separated by space "] list = input_string.split[] print["Calculating sum of element of input list"] sum = 0 for num in list: sum += int [num] print["Sum = ",sum]
Khi chương trình trên được chạy, đầu ra sẽ giống như thế này
đầu ra
Nhập một phần tử danh sách được phân tách bằng dấu cách 2 4 6 9
Tính tổng các phần tử của danh sách đầu vào
Tổng = 20
Phân tích
Bây giờ chúng ta hãy phân tích chương trình và xem cách hoạt động đằng sau nó
- Như bạn đã biết, bất cứ khi nào chúng ta sử dụng hàm input[] trong Python, nó sẽ chuyển đổi đầu vào của người dùng thành một chuỗi. Do đó, trong chương trình trên, chúng tôi đã chấp nhận một phần tử danh sách từ người dùng ở dạng chuỗi được phân tách bằng dấu cách
- Một điều cần lưu ý ở đây là bạn cũng có khả năng chấp nhận một chuỗi được phân tách bằng dấu phẩy của toán tử [,]. Nhưng trong tình huống này, bạn cần sử dụng hàm split[] để truyền đối số cũng như dấu phân cách trong chương trình Python
- Nếu để ý kỹ, bạn sẽ thấy rằng chúng ta đã sử dụng hàm input_string. split[] để tách chuỗi đầu vào được phân tách bằng dấu cách từ người dùng và chuyển đổi chúng thành các phần tử riêng lẻ để thêm vào danh sách
- Chúng tôi cũng đã sử dụng vòng lặp For và chuyển đổi mọi phần tử thành một số nguyên để tính tổng của nó
Chuyển sang chủ đề tiếp theo của bài viết này, chúng ta hãy xem cách nhập danh sách trong python chứa chuỗi,
Chấp nhận Danh sách Chuỗi từ Người dùng
Tương tự như chương trình trên, chúng ta có khả năng tạo một chương trình bằng Python để nhận danh sách chuỗi từ người dùng. Hãy xem ví dụ dưới đây để hiểu điều này tốt hơn
input_string = input["Enter family members separated by comma "] family_list = input_string.split[","] print["Printing all family member names"] for name in family_list: print[name]
Khi chương trình trên được chạy, đầu ra sẽ giống như thế này
Nhập các thành viên gia đình được phân tách bằng dấu phẩy. Julius, Mark, John
In tất cả tên thành viên gia đình
Juluis
Đánh dấu
John
Phân tích
Hãy để chúng tôi chia chương trình trên thành các con trỏ và hiểu rõ hơn về nó
- Tương tự như ví dụ trước, chúng tôi đã chấp nhận danh sách đầu vào từ người dùng ở dạng chuỗi được phân tách bằng dấu phẩy
- Chúng tôi đã sử dụng input_string. split[“,”] để tách chuỗi được phân tách bằng dấu phẩy và chuyển nó thành danh sách chuỗi sẽ được sử dụng trong chương trình
- Chúng tôi đã sử dụng vòng lặp for và in ra tất cả các họ theo thứ tự, như bạn có thể thấy trong kết quả được chia sẻ ở trên
Tiếp tục, chúng ta hãy xem khái niệm này có giá trị như thế nào từ quan điểm lập trình,
ví dụ
Chúng ta hãy xem một vài ví dụ khác để hiểu cách nhập danh sách trong Python
ví dụ 1
# creating an empty list lst = [] # number of elemetns as input n = int[input["Enter number of elements : "]] # iterating till the range for i in range[0, n]: ele = int[input[]] lst.append[ele] # adding the element print[lst]
đầu ra
Chúng ta hãy xem ví dụ tiếp theo,
ví dụ 2
________số 8_______đầu ra
ví dụ 3
# number of elements n = int[input["Enter number of elements : "]] # Below line read inputs from user using map[] function a = list[map[int,input["nEnter the numbers : "].strip[].split[]]][:n] print["nList is - ", a]
Đây sẽ là ví dụ cuối cùng của bài viết này,
Ví dụ 4
lst = [ ] n = int[input["Enter number of elements : "]] for i in range[0, n]: ele = [input[], int[input[]]] lst.append[ele] print[lst]
đầu ra
Đây chính là điều đưa chúng ta đến phần cuối của bài viết này về Cách nhập danh sách bằng Python?
Để có kiến thức chuyên sâu về Python cùng với các ứng dụng khác nhau của nó, bạn có thể đăng ký ngay để được đào tạo trực tuyến về Python với sự hỗ trợ 24/7 và quyền truy cập trọn đời
Có một câu hỏi cho chúng tôi?