【问题标题】:Printing a list of right justified separated numbers with no trailing space in python在python中打印一个没有尾随空格的右对齐分隔数字列表
【发布时间】: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


    【解决方案1】:

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

    【讨论】:

    • 嗨,杰夫。感谢您的答复!对不起,我草率地写了我想要的。您的输出是正确的,但我试图消除最后一个 int 之后的最后一个空格。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-04-07
    • 2011-01-24
    • 1970-01-01
    相关资源
    最近更新 更多