Về vấn đề đầu tiên mà bạn có, cách tốt nhất để bạn in đầu ra cạnh nhau sẽ là lặp lại danh sách và in từng giá trị trong danh sách. Ngoài ra, bạn có thể sử dụng F-Strings, đây là một tính năng mà chúng tôi đã thêm vào Python 3.6 và nó cho phép bạn làm những thứ như thế này:
x = 10
print[f'{x+20}']
>> 30
Bạn có thể đọc thêm về F-String ở đây.
Về vấn đề thứ hai mà bạn đang phải đối mặt. Bạn đã gặp lỗi này vì bạn đã gọi hàm tối đa [] trên một bản nổi. Hàm tối đa nên được gọi cho một danh sách.
Tôi đã thực hiện một số điều chỉnh. Đây là mã cuối cùng trông như thế nào:
list1 , list2 = [] , []
max_range = 2
count = 0
for i in range[max_range]:
customer_name = input["Customer name: "]
list1.append[customer_name]
spent = float[input["Amount Spent: "]]
list2.append[spent]
count += spent
averageSpent = count / max_range
print["Name\t\t\tAmount"]
for i in range[len[list1]]:
print[f'{list1[i]} \t\t\t$ {list2[i]}']
print["Total spending:\t\t $", count]
print["Average spending:\t $", averageSpent]
print["Most money spent:\t $", max[list2]]
print["Least money spent:\t $", min[list2]]
Chỉnh sửa: Sử dụng chức năng ZIP có thể là một tùy chọn khác để in hai đầu ra cạnh nhau bằng cách sử dụng Tuples. Tuy nhiên, vì bạn đã nói rằng bạn là người mới đối với các chủ đề này, tôi nghĩ rằng bạn nên tránh xa Zip [trong thời gian hiện tại] cho đến khi bạn cảm thấy thoải mái với các danh sách. using the zip function might be another option for printing the two outputs side by side using tuples. However, since you've already said that you're new to these topics I think that you should stay away from zip [for the time being] until you feel comfortable with lists.
Sự kết luận
Với hầu hết các ngôn ngữ lập trình khác yêu cầu vị trí của một dòng mới được đề cập trong chương trình, nhiều người dùng lần đầu có thể thấy in với Python hơi bất tiện. Tuy nhiên, nó thực sự tiết kiệm thời gian vì nó tự động phát hiện một dòng mới trong đầu ra với mỗi chức năng hoặc câu lệnh in.
Bất cứ khi nào bạn cần một đầu ra được in trong cùng một dòng, tất cả những gì bạn cần làm là chấm dứt chức năng in của mình bằng đối số 'kết thúc' trong Python3 hoặc giới thiệu dấu phẩy trong Python 2. Sự bổ sung đơn giản này sẽ giúp bạn thoát khỏi dòng mới của mình tai ương!
Làm cách nào để in một cái gì đó cạnh nhau?Python by default prints every output on a different line.
Thiết lập một máy in để in lên cả hai mặt của một tờ giấy.
print["Good Morning!"]
print["What a wonderful day!"]
Đầu ra
Good Morning!
What a wonderful day!
Nhấp vào tab Tệp ..
Nhấp vào In ..
- Trong cài đặt, nhấp vào in một mặt, sau đó nhấp vào in thủ công ở cả hai bên. Khi bạn in, Word sẽ nhắc bạn lật lại ngăn xếp để đưa các trang vào máy in một lần nữa ..
- Làm thế nào để bạn in hai thứ cùng một lúc trong Python?
- Để dễ dàng hiển thị các biến đơn và nhiều biến trong Python, hãy sử dụng câu lệnh in []. Đối với nhiều biến, sử dụng các toán tử dấu phẩy.
Làm cách nào để in số bên cạnh nhau trong Python?
In [i], [với dấu phẩy] nên thực hiện công việc. print[] is a function that prints output on different lines, every time you use the function. However, you can avoid this by introducing the argument end and assigning an empty string to it. This will prevent the next output from being printed in a new line.
# use the argument "end" to specify the end of line string
print["Good Morning!", end = '']
print["What a wonderful day!"]
Output:
Good Morning!What a wonderful day!
2. Sử dụng thư viện "Sys" [Python 3.x] để in mà không cần dòng mới
#Import the inbuilt sys library
import sys
#First Line of output
sys.stdout.write["Hey! Welcome to the STechies."]
#Second Line of output
sys.stdout.write["We have the best python tutorial"]
Output:
Hey! Welcome to the STechies.We have the best python tutorial
Giải thích mã:
Mô -đun SYS trong Python chứa nhiều chức năng và biến hoạt động trên môi trường thời gian chạy. Thông tin về các chức năng, hằng số và phương pháp của trình thông dịch Python có mặt trong mô -đun này.
Sys.stdout là một đối tượng tệp được sử dụng để hiển thị đầu ra của câu lệnh in. Phương thức sys.stdout.write [] không thêm một dòng mới ở cuối chuỗi sẽ được hiển thị.sys.stdout.write[] method does not add a newline at the end of a string to be displayed.
Trong mã, bạn có thể thấy rằng cả hai chuỗi được in trên cùng một dòng mà không có bất kỳ khoảng trống nào ở giữa.
Lưu ý: Đầu ra của cả hai ví dụ trên sẽ nằm trong một dòng mà không cần thêm không gian ở giữa các chuỗi.The output of both the example above will be in one line without adding space in between the strings.
Python in không có dòng mới: Thêm một khoảng trống ở cuối
Bây giờ nếu bạn muốn chèn một không gian trong đầu ra của mình, bạn phải sử dụng một khoảng trống ở cuối chức năng in đầu tiên của bạn.
Đầu vào
# use the argument "end" to specify the end of line string and print with space
print["Good Morning! ", end = '']
print["What a wonderful day!"]
Đầu ra
Good Morning! What a wonderful day!
In một "danh sách" với vòng lặp "cho" không có dòng mới
Ví dụ về mã:
list1 , list2 = [] , []
max_range = 2
count = 0
for i in range[max_range]:
customer_name = input["Customer name: "]
list1.append[customer_name]
spent = float[input["Amount Spent: "]]
list2.append[spent]
count += spent
averageSpent = count / max_range
print["Name\t\t\tAmount"]
for i in range[len[list1]]:
print[f'{list1[i]} \t\t\t$ {list2[i]}']
print["Total spending:\t\t $", count]
print["Average spending:\t $", averageSpent]
print["Most money spent:\t $", max[list2]]
print["Least money spent:\t $", min[list2]]
0Output:
list1 , list2 = [] , []
max_range = 2
count = 0
for i in range[max_range]:
customer_name = input["Customer name: "]
list1.append[customer_name]
spent = float[input["Amount Spent: "]]
list2.append[spent]
count += spent
averageSpent = count / max_range
print["Name\t\t\tAmount"]
for i in range[len[list1]]:
print[f'{list1[i]} \t\t\t$ {list2[i]}']
print["Total spending:\t\t $", count]
print["Average spending:\t $", averageSpent]
print["Most money spent:\t $", max[list2]]
print["Least money spent:\t $", min[list2]]
1Giải trình:
Trong chương trình được viết ở trên, các yếu tố của một danh sách được lưu trữ trong một biến có tên là ListFruits. Một vòng lặp được thực hiện để lặp lại các yếu tố và in từng cái một. Bạn có thể thấy rằng một đối số kết thúc được truyền cùng với câu lệnh in. Điều này tránh các chuỗi được in trên các dòng khác nhau.listfruits. A for loop is executed to iterate over the elements and print them out one by one. You can see that an end argument is passed along with the print statement. This avoids the strings to be printed on different lines.
Bạn có thể thấy rằng các yếu tố của danh sách được in cùng nhau trên cùng một dòng mà không có bất kỳ khoảng trống nào.
In với khoảng trống giữa các mục danh sách
Ví dụ về mã:
list1 , list2 = [] , []
max_range = 2
count = 0
for i in range[max_range]:
customer_name = input["Customer name: "]
list1.append[customer_name]
spent = float[input["Amount Spent: "]]
list2.append[spent]
count += spent
averageSpent = count / max_range
print["Name\t\t\tAmount"]
for i in range[len[list1]]:
print[f'{list1[i]} \t\t\t$ {list2[i]}']
print["Total spending:\t\t $", count]
print["Average spending:\t $", averageSpent]
print["Most money spent:\t $", max[list2]]
print["Least money spent:\t $", min[list2]]
2Output::
list1 , list2 = [] , []
max_range = 2
count = 0
for i in range[max_range]:
customer_name = input["Customer name: "]
list1.append[customer_name]
spent = float[input["Amount Spent: "]]
list2.append[spent]
count += spent
averageSpent = count / max_range
print["Name\t\t\tAmount"]
for i in range[len[list1]]:
print[f'{list1[i]} \t\t\t$ {list2[i]}']
print["Total spending:\t\t $", count]
print["Average spending:\t $", averageSpent]
print["Most money spent:\t $", max[list2]]
print["Least money spent:\t $", min[list2]]
3Explanation:
Ở đây, một vòng lặp lặp qua các mục danh sách để in chúng ra trên cùng một dòng bằng cách sử dụng câu lệnh in. Điều này đạt được bằng cách chuyển đối số cuối có chứa giá trị của một chuỗi trống. Có một khoảng trống giữa các trích dẫn duy nhất, như được quan sát trong mã. Điều này tạo ra một khoảng trống giữa các yếu tố danh sách khi được in ra trên một dòng.end argument that contains the value of an empty string. There is a space between the single quotes, as observed in the code. This creates a space between the list elements when printed out on a single line.
In mà không có dòng mới trong Python 2.x
Để in mà không có dòng mới trong Python 2.x, bạn phải sử dụng dấu phẩy nơi câu lệnh in của bạn kết thúc.
Không giống như Python 3.x, Python 2.x không có đối số 'kết thúc'. 'end' argument.
3. Sử dụng "dấu phẩy" để chấm dứt câu lệnh in
Để in trong cùng một dòng trong Python 2.x, tất cả những gì bạn phải làm là chấm dứt câu lệnh in của bạn bằng dấu phẩy.terminate your print statement with a comma.
Trong ví dụ dưới đây, câu lệnh in được chấm dứt bằng dấu phẩy.terminated with a comma.
Đầu vào
list1 , list2 = [] , []
max_range = 2
count = 0
for i in range[max_range]:
customer_name = input["Customer name: "]
list1.append[customer_name]
spent = float[input["Amount Spent: "]]
list2.append[spent]
count += spent
averageSpent = count / max_range
print["Name\t\t\tAmount"]
for i in range[len[list1]]:
print[f'{list1[i]} \t\t\t$ {list2[i]}']
print["Total spending:\t\t $", count]
print["Average spending:\t $", averageSpent]
print["Most money spent:\t $", max[list2]]
print["Least money spent:\t $", min[list2]]
4Đầu ra
list1 , list2 = [] , []
max_range = 2
count = 0
for i in range[max_range]:
customer_name = input["Customer name: "]
list1.append[customer_name]
spent = float[input["Amount Spent: "]]
list2.append[spent]
count += spent
averageSpent = count / max_range
print["Name\t\t\tAmount"]
for i in range[len[list1]]:
print[f'{list1[i]} \t\t\t$ {list2[i]}']
print["Total spending:\t\t $", count]
print["Average spending:\t $", averageSpent]
print["Most money spent:\t $", max[list2]]
print["Least money spent:\t $", min[list2]]
5In một "danh sách" với vòng lặp "cho" không có dòng mới
Ví dụ về mã:
Giải trình:
Trong chương trình được viết ở trên, các yếu tố của một danh sách được lưu trữ trong một biến có tên là ListFruits. Một vòng lặp được thực hiện để lặp lại các yếu tố và in từng cái một. Bạn có thể thấy rằng một đối số kết thúc được truyền cùng với câu lệnh in. Điều này tránh các chuỗi được in trên các dòng khác nhau.
Bạn có thể thấy rằng các yếu tố của danh sách được in cùng nhau trên cùng một dòng mà không có bất kỳ khoảng trống nào.'end' in Python3 or introduce a comma in Python 2.This simple addition will help you get rid of your new line woes!