格式问题

Problems with the formatting

编写一个程序,要求用户输入整数,每个整数单独一行。用户在空行中指示条目的结尾。该程序打印负值。程序在同一行打印值,用space.

隔开
n = input()
while n != "":
    n = int(n)
    print(-n, end=" ")
    n = input()
print(-n, end=" ")

此代码有效,但需要格式化方面的帮助。 输入应如下所示:

输出应如下所示: -5 0 11 -2

因为你想输入所有值然后打印你需要将它们全部保存到一个列表中。然后,在你输入后打印出来。您可以使用 join() 来执行此操作,但请注意,您必须使用此从 str 转换为 int 并返回 str

all_nums = []
n = input()
while n != "":
    all_nums.append(str(-int(i)))
    n = input()
print(" ".join(all_nums))

相反,如果您想用正常循环打印出数字,您可以这样做

all_nums = []
n = input()
while n != "":
    all_nums.append(-int(i))
    n = input()
for i in all_nums:
    print(i, end=" ")