【Python入門】format()関数の使い方|文字列に変数を埋め込む方法と応用例

Python

Pythonでは、format() 関数を使って文字列の中に数値や変数を柔軟に埋め込むことができます。初心者でも理解しやすく、複数の変数を組み合わせたり、順番を指定したりと応用も効く便利な方法です。

この記事では、基本の使い方から実践的な応用例までをわかりやすく解説します。

スポンサーリンク
スポンサーリンク

format()関数とは?

format() は、文字列中の {} に変数を挿入するための関数です。

name = "Taro"
print("こんにちは、{}さん".format(name))  # こんにちは、Taroさん

format()の型

#format()の型
"文字列{x}".format(a,b,c,...)

「”文字列{x}”」のx部分にformat()で指定した値が入ります。

format()を用いた使用例

基本的な使用例

#基本的な使用例
name = "たけし"
age = 20
moji = "{0}は{1}です。".format(name,age)
print(moji)

文字列中で値を代入したいところに{0}、{1}などと記入します。この場合だったら、2つ代入したいので、{0}、{1}となります。

名前付き引数の使用例

#名前付き引数の使用例1
print("{name}は{age}です。".format(name = "たけし",age = 20))
#名前付き引数の使用例2
moji1 = "{name}は{age}です。"
moji = moji1.format(name = "たけし",age = 20)
print(moji)

両方とも同じ出力結果「たけしは20です。」になります。

数値の整形(応用)

pi = 3.14159
print("円周率は{:.2f}です".format(pi))
# 出力:円周率は3.14です
書式説明
{:.2f}小数点以下2桁まで表示
{:>10}右寄せ10文字幅で表示
{:<10}左寄せ10文字幅で表示
{:,.0f}3桁カンマ区切り、整数表示

注意点と落とし穴

  • {} の数と format() の引数数が一致しないと IndexError が発生します。
  • format() の中で str() への変換は不要です。

f文字列との違いと使い分け

比較項目format()関数f文字列(f-string)
Pythonバージョン2.7以降で利用可能3.6以降のみ
可読性やや冗長になりがち簡潔で読みやすい
柔軟性高い(順序・整形・再利用が可能)中〜高(複雑な整形にはやや不向き)

まとめ

format() は、複数の値を柔軟に整形・表示したいときに便利な関数です。現在は f文字列 が主流になりつつありますが、古い環境や再利用性のあるテンプレート構文には format() の方が適している場合もあります。


関連リンク

他の文字列連結方法や、最新の推奨記法であるf文字列についてもチェックしてみましょう!

タイトルとURLをコピーしました