Python 如何删除输出末尾的空格

Python 如何删除输出末尾的空格,python,python-3.x,ord,Python,Python 3.x,Ord,我目前正试图找出一个编码问题,当我使用ord时,我在输出的末尾收到一个空格。如果有人能帮我修复代码中的这个错误,我将非常感激 x = input("Dessert idea: ") for i in x: print(ord(i),end=" ") 输出总是在代码末尾随数字一起吐出空格, 例如: *空格是用引号显示的*请尝试使用以下代码以防止打印行上出现最后一个空格 x = input("Dessert idea: ") for i in x[:-1]: print(ord(i)

我目前正试图找出一个编码问题,当我使用ord时,我在输出的末尾收到一个空格。如果有人能帮我修复代码中的这个错误,我将非常感激

x = input("Dessert idea: ")
for i in x:
  print(ord(i),end=" ")   
输出总是在代码末尾随数字一起吐出空格, 例如:


*空格是用引号显示的*

请尝试使用以下代码以防止打印行上出现最后一个空格

x = input("Dessert idea: ")
for i in x[:-1]:
  print(ord(i),end=" ")
print(ord(x[-1]))

这将遍历除最后一个元素之外的所有元素,然后将最后一个元素添加到print语句中,而不使用空格。

另一种解决方案可以使代码看起来更干净:

x = input("Dessert idea: ")
print(*(ord(i) for i in x))
这将把对
ord
的调用解压成单个参数,默认情况下,这些参数用空格分隔,并用换行符结束该行


如果你更喜欢函数类型,你可能更喜欢
print(*map(ord,x))

那么为什么要使用
end=“”
?@l3via,而不是我需要所有输出都在一行上。这样做,输出就没有空格了。谢谢你们的建议,这是一个比我的+1更干净的(pythonic)解决方案。谢谢你们两位帮助我理解我错在哪里。
x = input("Dessert idea: ")
print(*(ord(i) for i in x))