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

时间:2016-03-12 23:44:28

标签: python-3.x printing separator trailing right-justified

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

我的sep = " "未被考虑在内。 我不想使用str.join(),而且我希望每次运行循环时都不必创建和添加字符串。

请帮我解决!

1 个答案:

答案 0 :(得分:0)

您的代码有多个问题。 {格式字符串外部是语法错误。您需要格式字符串中的一对{}。您应该将转换类型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