在python中打印没有尾部空格的右对齐分隔数字列表

问题描述:

for i in range(7): 
    print("{0:>2}".format(i), sep = " ", end="") 

我的sep = " "未被考虑在内。 我不想使用str.join(),我宁愿在每次运行循环时都不必创建并添加到字符串中。在python中打印没有尾部空格的右对齐分隔数字列表

请帮我解决!

您的代码有多个问题。格式字符串之外的{是语法错误。您需要格式字符串中的一对{}。您应该使用转换类型d作为int。 Sep只适用于有多个字段的情况。结束决定每个打印语句后打印的内容。我期望以下是你想要的。

for i in range(7): 
    print("{0:>2d}".format(i), end=" ") 
# prints 
0 1 2 3 4 5 6 

编辑:避免最后的空间只是稍微困难。

start = True 
for i in range(7): 
    print('' if start else ' ', "{0:>2d}".format(i), sep='', end='') 
    start = False 
# prints 
0 1 2 3 4 5 6 
+0

嗨,杰夫。感谢您的答复!对不起,我懒洋洋地写了我想要的东西。你的输出是正确的,但我试图消除最后一个int后的最后一个空格。 –

+0

请参阅使用修订代码进行编辑。 –