0

文字列フォーマットを使用すると、結果の文字列が予想より長くなります。

例えば:

In [1]: "%s".ljust(7) % "123456"
Out[1]: '123456     '

出力文字列の長さが 7 文字ではありません。

そのような動作をもたらすために「バックグラウンドで」正確に何が起こっているのかに興味がありますか?

4

2 に答える 2

2

"%s"は最初に 7 桁に調整されたままになって"%s "います'123456'

>>> '%s'.ljust(7)
'%s     '
>>> _ % '123456'
'123456     '

あなたが使用することができます:

>>> ('%s' % '123456').ljust(7)
'123456

または、フォーマット文字列で適切な幅を指定します...

于 2012-11-30T19:22:58.963 に答える
1

がフォーマット文字列に適用されます。ljust()これは 2 文字しかないため、5 つのスペースが追加されています。

次に、他の文字列がこれに補間されます。

于 2012-11-30T19:23:14.710 に答える