【发布时间】:2016-03-12 23:44:28
【问题描述】:
for i in range(7):
print("{0:>2}".format(i), sep = " ", end="")
我的sep = " " 没有被考虑在内。
我不想使用str.join(),并且我希望不必在每次运行循环时都创建和添加字符串。
请帮我解决!
【问题讨论】:
标签: python-3.x printing separator trailing right-justified
for i in range(7):
print("{0:>2}".format(i), sep = " ", end="")
我的sep = " " 没有被考虑在内。
我不想使用str.join(),并且我希望不必在每次运行循环时都创建和添加字符串。
请帮我解决!
【问题讨论】:
标签: python-3.x printing separator trailing right-justified
您的代码有多个问题。格式字符串外的 { 是语法错误。您需要格式字符串中的一对 {}。您应该将转换类型 d 用于 int。 Sep 仅适用于有多个字段的情况。 End 确定在每个打印语句之后打印的内容。我希望以下是您想要的。
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
【讨论】: