使用字符串格式化时,结果字符串比预期的要长。
例如:
In [1]: "%s".ljust(7) % "123456"
Out[1]: '123456 '
输出字符串不是 7 个字符长。
我对“在后台”究竟发生了什么导致这种行为感兴趣?
使用字符串格式化时,结果字符串比预期的要长。
例如:
In [1]: "%s".ljust(7) % "123456"
Out[1]: '123456 '
输出字符串不是 7 个字符长。
我对“在后台”究竟发生了什么导致这种行为感兴趣?
"%s"
首先被调整到 7 个位置 - 例如"%s "
,然后你用'123456'
%s 替换 ......因此你得到的结果......
>>> '%s'.ljust(7)
'%s '
>>> _ % '123456'
'123456 '
你可以使用:
>>> ('%s' % '123456').ljust(7)
'123456
或者在格式字符串中指定适当的宽度...
应用于您的ljust()
格式化字符串,因为它只有两个字符长,所以附加了五个空格。
然后将另一个字符串插入其中。