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の使用を推奨します。