Python:
文字列の補間
方法:
Python 3.6以上では、f-stringsを使用して文字列を補間できます。以下の方法です:
name = 'Alice'
age = 30
greeting = f"こんにちは、{name}さん。あなたは{age}歳です。"
print(greeting)
出力:
こんにちは、Aliceさん。あなたは30歳です。
中括弧内に式を使用することもできます:
a = 5
b = 10
info = f"五加十は{a + b}です、{2 * (a + b)}ではありません。"
print(info)
出力:
五加十は15です、30ではありません。
ディープダイブ
Python 3.6より前では、.format()
が文字列を補間する方法でした:
name = 'Bob'
age = 25
greeting = "こんにちは、{}さん。あなたは{}歳です。".format(name, age)
print(greeting)
古い学校のPython(バージョン < 2.6)では、補間に%
演算子を使用していました。これは直感的ではなく、複数の変数を使っているときにはごちゃごちゃになりがちです:
name = 'Carol'
age = 35
greeting = "こんにちは、%sさん。あなたは%d歳です。" % (name, age)
print(greeting)
より清潔な構文の他に、f-stringsは実行時に評価され、効率的な文字列形式の操作に直接変換されるため、より速いです。 .format()
と%
演算子はより多くのステップを含み、遅いです。
参照
- PEP 498 – リテラル文字列補間 f-stringsの公式ドキュメント。
- Python f-strings by Real Pythonでのf-stringsのチュートリアル。
- Python documentationの.format()メソッド 古い
.format()
メソッドによる文字列フォーマッティングを理解するため。