文字列のリストがあり、その一部にコードが含まれている場合、後でそれらの文字列で{}
使用することはできますか?format()
私が持っている場合、のような身体的損傷のためのフレーバーテキストを書きたいのですが"He appears to be limping on his {1} leg."
、問題の脚に応じて「左」または「右」のいずれかでその文字列をフォーマットしたいと思います。
文字列のリストがあり、その一部にコードが含まれている場合、後でそれらの文字列で{}
使用することはできますか?format()
私が持っている場合、のような身体的損傷のためのフレーバーテキストを書きたいのですが"He appears to be limping on his {1} leg."
、問題の脚に応じて「左」または「右」のいずれかでその文字列をフォーマットしたいと思います。
確かにそれは可能です。.format()
文字列を保存して、後で呼び出すだけです。
>>> someformat = 'Hello {}!'
>>> someformat
'Hello {}!'
>>> print someformat.format('World')
Hello World!
.format()
は文字列の単なるメソッドであり、そのメソッドを呼び出した場合にのみ、文字列はテンプレートとして解釈されます。と同様.strip()
に.join()
、選択した時間に任意の文字列オブジェクトでそのメソッドを呼び出すことができます。
必要なときにいつでも電話できます.format()
。
ファイルの一番上でフォーマット文字列を定義し、それをいくつかの異なるデータで数回使用することもできます。
あなたが本当に電話するとき、あなたがそれをどこかで参照している限り、それは完全にあなた次第です(またはあなたのニーズ)。
つまり、しないでください
TEMPLATE = "He appears to be limping on his {0} leg."
[...]
TEMPLATE = TEMPLATE.format('left')
元のテンプレートが失われるためです。
代わりに、
TEMPLATE = "He appears to be limping on his {0} leg."
[...]
leftsentence = TEMPLATE.format('left')
[...]
rightsentence = TEMPLATE.format('right')
[...]
middlesentence = TEMPLATE.format('middle')
いつでもどこでも必要です。
{0}
に渡された最初の引数を一致させるためにを使用する必要がありますformat
。
例:
>>> s = "He appears to be limping on his {0} leg"
>>> s.format("bad")
'He appears to be limping on his bad leg'