少しでも分かりやすく伝えたいf文字列

少しでも分かりやすく伝えたいf文字列

皆さんこんにちは!!
皆さんは、Pythonで文字列表示なんかを行う際に型変換だったり、format関数で変数を別の場所に記述するのが面倒だなと思うことはありませんか?
今回はそんな問題を解決するf文字列について説明していきます!

f文字列とは

f文字列はPython3.6から導入された記述方法で異なる型(strとint等)でも同時に出力することができるような文字列のことです。

実際に使ってみる

では実際にf文字列を使っていきましょう。
例として、今回はシンプルに足し算の結果を求めるプログラムを表示していきます。

変数aとbの足し算の結果cを表すコードを記述しようとすると、

a = 2
b = 3
c = a + b
print("足し算した結果は" + str(c) + "です。")

の様にわざわざcを数値から文字列に直す必要があります。
これを、

print("足し算した結果は" + c + "です。")

の様にしてしまうと、
「TypeError: can only concatenate str (not “int”) to str」と出てしまい、
日本語訳すると「文字列には数値を連結できないよ!」といったようなエラーが出てしまいます。

また、format関数で表そうとすると、

a = 2
b = 3
c = a + b
print("足し算した結果は{0}です。".format(c))

の様に表すことができますが、コード的にもわざわざstrで直したり、format関数を用いると少し見づらくなってしまうためこれを見やすく簡単に表現するためにf文字列を用います。

やり方は簡単で、最初に「f」または「F」を付けて、変数を波括弧「{}」で括るだけで表現することができます。
表現方法:「f”任意の文字列{変数}”」、「F”任意の文字列{変数}”」

実際にやってみると、

a = 2
b = 3
c = a + b
print(f"足し算した結果は{c}です。")

これだけでエラーも出さずに文字列を出力することができます。

少し応用

変数を表示するだけでなく、内部で演算を行うこともできます。
具体的にコードを記述すると、

a = 2
b = 3
print(f"足し算した結果は{a + b}です。")

の様にわざわざcを用意しなくとも結果を出力することができます。

まとめ

f文字列は、Pythonプログラムで変数や式を埋め込む際に便利な文字列形式です!
strに変換する方法やformat関数を用いる方法よりも見やすく簡単に書けるので是非使ってみてください!