f-string
Pythonのf-string(フォーマット済み文字列リテラル)は、Python 3.6から導入された文字列フォーマットの方法です。f-stringを使用することで、文字列の中に変数や式を埋め込んで簡潔に文字列を構築することができます。以下では、f-stringの基本的な使い方や特徴について詳しく説明します。
基本的な使い方
f-stringは、文字列の先頭に f
または F
を付けた文字列リテラルです。以下のように、中括弧 {}
内に変数や式を埋め込むことができます。
name = "Alice"
age = 30
message = f"My name is {name} and I am {age} years old."
print(message)
この例では、name
とage
という変数を {}
内に挿入して、その値を文字列に組み込んでいます。f"..."
の形式を使うことで、変数の値を埋め込むことができます。
変数の埋め込み
f-stringでは、変数のほかにも式や関数の結果を埋め込むこともできます。
radius = 5
area = f"The area of a circle with radius {radius} is {3.14 * radius ** 2}"
print(area)
この例では、数式 3.14 * radius ** 2
の結果が f-string 内で計算されて、文字列に埋め込まれています。
書式指定
f-stringでは、変数や式を埋め込む際に、書式指定を行うことも可能です。例えば、小数点以下の桁数を制限したり、特定のフォーマットで数値を表示したりすることができます。
pi = 3.141592653589793
formatted_pi = f"Value of pi: {pi:.2f}"
print(formatted_pi)
この例では、:.
の後に小数点以下の桁数を指定しています。{pi:.2f}
は、piの値を小数点以下2桁まで表示するようにフォーマットされます。
属性やメソッドの呼び出し
f-string内では、オブジェクトの属性やメソッドも直接呼び出すことができます。
class Person:
def __init__(self, name, age):
self.name = name
self.age = age
def greet(self):
return f"Hello, my name is {self.name} and I am {self.age} years old."
alice = Person("Alice", 30)
message = f"{alice.greet()} Nice to meet you!"
print(message)
この例では、alice.greet()
メソッドの結果を直接f-string内で使用しています。
f-stringと他の文字列フォーマット方法の比較
f-stringは他の文字列フォーマット方法(format()
メソッドや%
演算子)に比べて以下の利点があります:
-
可読性と簡潔さ:f-stringはシンプルで直感的な書き方であり、他のフォーマットよりも読みやすくメンテナンスしやすいです。
-
パフォーマンス:f-stringは他の方法よりも高速で、処理速度が速いです。
-
動的な式の埋め込み:f-stringでは式を直接埋め込むことができ、動的な値の計算や取得が簡単に行えます。
Pythonのf-stringは、文字列操作を簡単で効率的に行うための強力なツールであり、Pythonのバージョン3.6以降で利用可能です。