月ノ書

Pythonの文字列フォーマット|f文字列・format・%演算子で出力を整える方法

この記事でわかること
  • Pythonで文字列をきれいに整形する方法
  • f文字列(f-strings)の使い方
  • format() メソッドで変数を埋め込む方法
  • 旧式の % 演算子によるフォーマット
  • 数値や文字列の整形、桁揃えや小数点指定の方法

f文字列(f-strings)

Python 3.6以降で使える一番便利な方法です

name = "太郎"
age = 20

print(f"名前は{name}、年齢は{age}歳です")

出力:

名前は太郎、年齢は20歳です
width = 10
height = 5
print(f"面積は{width * height}です")  # 面積は50です

計算結果も直接埋め込めます

format() メソッド

古い方法ですが、Python 3でも使えます

name = "太郎"
age = 20

print("名前は{}、年齢は{}歳です".format(name, age))

番号を付けて順番を入れ替えることもできます

print("年齢は{1}歳、名前は{0}".format(name, age))

%演算子によるフォーマット(旧式)

C言語風の書き方です

name = "太郎"
age = 20

print("名前は%s、年齢は%d歳です" % (name, age))

数値の整形

f文字列を使うと、桁揃えや小数点の指定も簡単です

pi = 3.141592

# 小数点以下2桁まで
print(f"円周率は{pi:.2f}")  # 円周率は3.14

# 幅を指定して右寄せ
print(f"{pi:10.2f}")  #      3.14(10文字幅)

文字列の整形例

name = "太郎"
score = 95

# 左寄せ
print(f"{name:<10} {score}")  # 太郎       95

# 右寄せ
print(f"{name:>10} {score}")  #        太郎 95

表形式で並べたいときに便利です

まとめ

文字列フォーマットをマスターすると、出力の見た目もきれいに整えられて、プログラムの完成度がぐっと上がります

学習進捗