Aligning output in Python?
有没有一种方法可以像这样正确对齐输出:
1 2 3 4 5 | Item: $ 13.69 Tax: $ 5.30 Oth: $ 2.50 --------------- Total: $ 99.80 |
请注意,我使用的是python 3。
您可以使用字符串的
1 2 3 4 5 6 7 | fmt = '{0:>5}: ${1:>6.2f}' print(fmt.format('Item', 13.69)) # Prints ' Item: $ 13.69' print(fmt.format('Tax', 5.3)) print(fmt.format('Oth', 2.5)) print('-'*len(fmt.format('Item', 13.69))) # Prints as many '-' as the length of the printed strings print(fmt.format('Total', 99.8)) # etc... |
_0:>5部分是说"取给
当然,在实际代码中,这可能是循环的一部分。
使用字符串格式:
1 | print("$%6s" % dec_or_string) |
在文本与所有要对齐的项之间使用相同数量的空格。
另一种选择是使用str.format操作符,如本文所述。