カテゴリ: Python 更新日: 2025/12/12

Pythonのformat()の使い方完全ガイド!文字列フォーマットの基本と応用

Pythonのformat()の使い方!文字列フォーマットの基本と応用
Pythonのformat()の使い方!文字列フォーマットの基本と応用

先生と生徒の会話形式で理解しよう

生徒

「Pythonで数字や文字をキレイに並べて表示したいです。方法はありますか?」

先生

「ありますよ。format()を使えば、文字列の中に変数を入れたり、見た目を揃えたりできます。」

生徒

「具体的にはどう書くんですか?パソコン初心者にもわかるように教えてください!」

先生

「では最初に基本形から順に、丁寧に解説していきますね。」

-

1. format()って何?

1. format()って何?
1. format()って何?

format()は、文章の中に数値や文字をそのまま埋め込んだり、表示の形を整えたりするための便利な仕組みです。たとえば、「名前を入れたい」「数字をきれいに揃えたい」といった場面で役に立ちます。単なる文字の結合よりも自然に読みやすく書けるので、初心者でもすぐに実践できます。


name = "りん"
msg = "こんにちは、{}さん!".format(name)
print(msg)

こんにちは、りんさん!

このように、{}の部分に変数がそのまま入ってくれるため、「文字+変数」を何度も組み合わせるよりもずっと便利で見やすいコードになります。

2. 基本の使い方:{}に変数を入れる

2. 基本の使い方:{}に変数を入れる
2. 基本の使い方:{}に変数を入れる

まずは簡単な例から。{}(波かっこ)を使って、そこに後から値を入れます。


name = "たろう"
age = 20
msg = "こんにちは、{}さん。{}歳ですね。".format(name, age)
print(msg)

実行結果:


こんにちは、たろうさん。20歳ですね。

このように{}の位置に
最初の引数(name)と
2番目の引数(age)が入ります。

3. {番号}を使って順番を変える方法

3. {番号}を使って順番を変える方法
3. {番号}を使って順番を変える方法

{}に番号を入れると、引数の順番を自由に変えられます。


msg = "{1}さん、{0}歳ですね。".format(age, name)
print(msg)

実行結果:


たろうさん、20歳ですね。

ここでは{1}nameで、{0}ageを指します。

4. 名前つきでわかりやすく指定する方法

4. 名前つきでわかりやすく指定する方法
4. 名前つきでわかりやすく指定する方法

変数に名前をつけて、{名前}形式で入れられます。読みやすいコードになります。


msg = "今日は{name}さんが{count}回ログインしました。".format(name="さくら", count=3)
print(msg)

実行結果:


今日はさくらさんが3回ログインしました。
-

5. 数字のゼロ埋めや幅指定など応用編

5. 数字のゼロ埋めや幅指定など応用編
5. 数字のゼロ埋めや幅指定など応用編

:05と書くと、数字を5桁にして先頭を0で埋めます。ゼロ埋めと呼ばれます。


num = 7
print("No.{:03}".format(num))
print("No.{:05}".format(num))

実行結果:


No.007
No.00007

これで番号をきれいに並べられます。

6. 少数を丸める:小数点以下の桁数指定

6. 少数を丸める:小数点以下の桁数指定
6. 少数を丸める:小数点以下の桁数指定

:.2fのようにすると、小数点以下2桁で表示されます。


price = 12.3456
print("価格は{:.2f}円です".format(price))

実行結果:


価格は12.35円です

丸めやfはfloat(少数)の意味です。:.xfでx桁まで指定できます。

7. 左右の幅を揃える:幅指定

7. 左右の幅を揃える:幅指定
7. 左右の幅を揃える:幅指定

:>10は右寄せで幅10、は左寄せ、は中央寄せになります。


text = "Python"
print("|{:>10}|".format(text))
print("|{:<10}|".format(text))
print("|{:^10}|".format(text))

実行結果:


|    Python|
|Python    |
|  Python  |

表やレポートをキレイに表示したいときに便利です。

8. 複数のフォーマットを組み合わせる

8. 複数のフォーマットを組み合わせる
8. 複数のフォーマットを組み合わせる

先ほどのゼロ埋めや少数桁などを組み合わせることができます。


price = 3.1
qty = 4
msg = "単価{:05.2f}円 × 数量{:03} = 合計{:07.2f}円".format(price, qty, price*qty)
print(msg)

実行結果:


単価003.10円 × 数量004 = 合計012.40円

9. 辞書やリストを使ってformat

9. 辞書やリストを使ってformat
9. 辞書やリストを使ってformat

辞書(キーと値のセット)やリストを使って、わかりやすく値を渡せます。


data = {"name":"花子", "score":95}
print("名前:{name}, 得点:{score}".format(**data))
# リストの場合
vals = [1,2,3]
print("{0},{1},{2}".format(*vals))

実行結果:


名前:花子, 得点:95
1,2,3

10. format()のメリットと使いどころ

10. format()のメリットと使いどころ
10. format()のメリットと使いどころ

format()は、プログラム初心者が「きれいな文字列」「見た目を揃えたい」「桁数を指定したい」と思ったときにぴったりの方法です。文字列フォーマットを覚えると、プログラミングでレポートや表を作るときに役立ちます。

また、f文字列f"...{変数}...")という新しい書き方もありますが、まずはformat()を理解しておくと応用が効きます。

まとめ

まとめ
まとめ

Pythonにおけるformat()関数は、初心者が文字列を柔軟に扱いたいときに非常に便利な機能です。
本記事では、基本的な{}による変数挿入から、引数の順番指定({0}{1})、 キーワード引数での明示的な指定、そして数値のゼロ埋めや桁数の制御、さらには左右の揃え方まで、 Pythonの文字列フォーマットの重要ポイントを一通り網羅しました。
実務では、報告書の出力やログメッセージの整形、データの見栄えを整える用途において、 format()の知識は不可欠です。
特に:05:.2fといった書式指定子の活用は、数値表示の精度と視認性を向上させます。
また:>10:<10などの寄せ指定は、レポート出力において整然とした印象を与えることができます。

辞書やリストを使って動的にデータを展開できる点も、Pythonらしい柔軟性です。 たとえばテンプレートに対して**辞書*リストを用いてデータを渡すことで、 再利用性の高いコードを実現できます。
また、複数のフォーマット指定(桁数・桁揃え・小数点処理など)を組み合わせることで、 より実用的な文字列出力が可能となります。

これらの機能は、初心者が「データをただ表示する」段階から、 「見やすく整形して表示する」という段階へ進むための大きなステップになります。 そして、後に学ぶf文字列の理解にもつながる基礎力となるため、 まずはformat()を使いこなすことが、Pythonプログラミング上達の近道といえるでしょう。

サンプルコードで再確認


# 総まとめとしての実用例
user = {"name": "ゆうき", "age": 25, "login": 12}
price = 380.5
quantity = 3
print("ユーザー:{name} さん({age}歳)".format(**user))
print("ログイン回数:{:03}回".format(user["login"]))
print("単価:{:07.2f}円 × 数量:{:02}個 = 合計:{:08.2f}円".format(price, quantity, price * quantity))

このようにformat()を使えば、数字の桁数や変数の順番、整列まですべて思い通りに整えることができます。

先生と生徒の振り返り会話

生徒

「先生、format()ってこんなに便利だったんですね!最初はカッコが多くて混乱したけど、いろんな使い方ができてびっくりしました。」

先生

「そうですね。文字列フォーマットを使いこなすと、Pythonの表現力が一気に広がりますよ。」

生徒

「特にゼロ埋めとか桁数の指定、小数の丸めとかは、画面出力をきれいに整えるときに使えそうです!」

先生

「まさにその通りです。ログやレポートを見やすく整えることで、プログラムの信頼性も上がりますからね。」

生徒

「辞書やリストからデータを取り出すやり方も便利でした!これなら色々なデータ形式にも対応できますね!」

先生

「その調子で、次はf文字列format_map()も勉強していきましょう。」

この記事を読んだ人からの質問

この記事を読んだ人からの質問
この記事を読んだ人からの質問

プログラミング初心者からのよくある疑問/質問を解決します

Pythonのformat関数って初心者にも簡単に使えるんですか?

はい、Pythonのformat関数は初心者向けにも使いやすく、文字列に数値や文字をきれいに挿入するのに便利です。

Pythonで変数を文字列の中に入れるにはどうすればいいですか?

format関数を使って、文字列内に{}を置き、そこに変数の値を挿入できます。
コメント
コメント投稿は、ログインしてください

まだ口コミはありません。

カテゴリの一覧へ
新着記事
New1
PHP
PHPのCookieセキュリティを完全ガイド!初心者でもわかるSecureとHttpOnlyの使い方
New2
PHP
PHPのCSRF対策を完全理解!トークンを使った安全なフォーム送信の仕組みを初心者向けに徹底解説
New3
PHP
PHPのSQLインジェクション対策を完全解説!初心者でも安全にデータベースを扱う方法
New4
PHP
PHPでカウントダウンタイマーを作る方法!初心者向けにやさしく解説
-
人気記事
No.1
Java&Spring記事人気No1
Python
Pythonでテキストファイルを1行ずつ読み込む方法(readline() / readlines())
No.2
Java&Spring記事人気No2
PHP
初心者向けPHPでMySQLからデータを取得する方法(SELECT文)完全ガイド
No.3
Java&Spring記事人気No3
Python
Pythonのリストの重複を削除する方法を解説!初心者向けにsetとdict.fromkeysの使い方をやさしく説明
No.4
Java&Spring記事人気No4
Python
Pythonで経過時間を測る方法をやさしく解説!初心者向けtime.perf_counterとtime.sleepの使い方
No.5
Java&Spring記事人気No5
Python
Pythonでエラースタックトレースを表示・取得する方法を徹底解説!初心者向け例外処理入門
No.6
Java&Spring記事人気No6
Python
PythonでMySQLに接続する方法を完全解説!初心者でもわかるpymysqlの基本
No.7
Java&Spring記事人気No7
PHP
PHPのOAuth認証をやさしく解説!Google・Facebookログインを初心者向けに実装しよう
No.8
Java&Spring記事人気No8
Python
PythonでExcelファイル(.xlsx)を操作する方法を徹底解説!初心者でもできるopenpyxl・pandasの使い方
-
-