文字列フォーマットを使用すると、結果の文字列が予想より長くなります。
例えば:
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'.ljust(7)
'%s '
>>> _ % '123456'
'123456 '
あなたが使用することができます:
>>> ('%s' % '123456').ljust(7)
'123456
または、フォーマット文字列で適切な幅を指定します...
がフォーマット文字列に適用されます。ljust()
これは 2 文字しかないため、5 つのスペースが追加されています。
次に、他の文字列がこれに補間されます。