1

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

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

输出总是在代码末尾与数字一起吐出空格,例如:

89 101 101 116 115" "

*空格用引号表示*

4

2 回答 2

1

尝试使用以下代码来防止打印行上的最后一个空格;

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

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

于 2018-08-27T08:55:20.997 回答
1

使代码看起来更干净的替代解决方案 IMO:

x = input("Dessert idea: ")
print(*(ord(i) for i in x))

这会将调用解压缩ord为单个参数,默认情况下,这些参数由空格分隔,并以换行符结束该行。

如果您更喜欢功能类型,您可能更喜欢print(*map(ord, x))

于 2018-08-27T09:35:20.973 回答