以下错误信息中的'=' alignment
是什么意思,为什么这段代码会导致此错误?
>>> "{num:03}".format(num="1")
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: '=' alignment not allowed in string format specifier
代码存在一个微妙的问题:输入值"1"
是文本,而不是数字。但错误消息似乎与此无关。错误消息中没有任何提示表明为什么“'=' alignment”相关,并且它在代码中也未出现。那么发出该错误消息的意义是什么?
f'{int(num_as_text):03}'
缩减为一行 - 将字符串转换为整数进行填充。 如果需要,您可以进一步将其转换回字符串。 - Apolymoxic