我看到str.format()
在指定对齐时如何处理bool类型的一些意外行为。这是一个例子:
>>> '{}'.format(bool(1))
True
>>> '{:<}'.format(bool(1))
1
注意 - 当我指定对齐时,format
切换到显示整数而不是True
(我想显示bool,而不是整数)。我可以通过将bool强制转换为字符串强制所需的输出:
>>> '{:<}'.format(str(bool(1)))
True
我的问题是 - 任何人都可以在str.format()
中解释这个边缘情况吗?