我需要在python中使用正确的对齐格式打印布尔值(true或false)。可能这个问题很愚蠢,但对我来说很重要。
#!/usr/bin/python
dup_list=[{"status": True, "set": False}, { "status": True, "set": False}]
fmt = "{} {}"
print fmt.format("enabled", "set")
print fmt.format('-----', '--------')
for temp in dup_list:
print fmt.format(temp['status'], temp['set'])
获得输出但未正确对齐:
enabled set
----- --------
True False
True False
但我想正确对齐屏幕上的输出。带有空数据的{} {},输出未对齐。当我尝试更改如下对齐时,但它正在打印整数值。
fmt = "{:6} {:6}"
print fmt.format("enabled", "set")
print fmt.format('-------', '--------')
output:
enabled set
------- --------
1 0
1 0
任何人都可以帮助我,如何正确使用“格式”打印真假。
我需要输出如下。
enabled set
----- --------
True False
True False
答案 0 :(得分:1)
{:6}
假定数字数据。对于布尔值,请使用他们的字符串格式:
>>> '{!s:>6}'.format(True)
' True'
>>> '{!s:6}'.format(True)
'True '
或者,不要重新发明轮子,并使用第三方tabulate。
答案 1 :(得分:0)
使用Python 3.6,您还可以使用
In [22]: a = True
In [27]: f'{a!r:>5}'
Out[27]: ' True'
In [28]: f'{a!s:>5}'
Out[28]: ' True'