Pythonでは、文字列をフォーマットするための2つの主要な方法があります。それらはstr.format()
とf-string
です。
str.format()
str.format()
はPython 2.6で導入され、文字列内の波括弧 {}
を変数に置き換えることができます。
name = "John"
print("Hello, {}".format(name)) # Hello, John
f-string
一方、f-string
はPython 3.6で導入されました。これは文字列の前に f
を付け、文字列内の波括弧 {}
内に直接変数を書くことができます。
name = "John"
print(f"Hello, {name}") # Hello, John
パフォーマンス
パフォーマンスに関しては、f-string
がstr.format()
よりも高速であることが報告されています。これは、f-string
が言語の文法と構文の一部であるため、str()
呼び出しに必要なシンボルテーブルの検索や関数呼び出しを必要としないからです。
まとめ
str.format()
とf-string
は、どちらもPythonで文字列をフォーマットするための有用なツールです。しかし、f-string
はより新しく、パフォーマンスも優れています。そのため、可能であればf-string
の使用を推奨します。