はじめに
これまでの学習で、
countsumavglevel
といった 計算結果を変数で扱える ようになりました。
ただ、
毎回 print() を並べて書くのは少し面倒です。
今回は、
複数の結果を「ログ形式」で1行にまとめて出力する
方法を学習しました。

今回使うデータ
まずは、これまで使ってきた数値をそのまま使用します。
count = 20
sum = 980
avg = 49
これまでの出力方法(おさらい)
print(f"[INFO] count={count} sum={sum} avg={avg}")
出力結果:
[INFO] count=20 sum=980 avg=49
一見問題ありませんが、
項目が増えるたびに書き直す必要があります。
データを「ひとつの箱」にまとめる
そこで、辞書(dict)を使ってまとめます。
stats = {
'count': count,
'sum': sum,
'avg': avg
}
ここでのポイントは、
- 名前(label)
- 中身(値)
をセットで管理できることです。
for文で箱の中を順に見る
for label in stats:
print(label, stats[label])
出力結果:
count 20
sum 980
avg 49
👉
「箱の中を1つずつ確認している」イメージです。
ログ用の部品を作る
次に、ログ用の文字列を作ります。
parts = []
for label in stats:
parts.append(f"{label}={stats[label]}")
この時点で parts の中身は:
['count=20', 'sum=980', 'avg=49']
1行のログにまとめる
log_line = " ".join(parts)
print(f"[INFO] {log_line}")
出力結果:
[INFO] count=20 sum=980 avg=49
🎉
for文でログを自動生成できました。
今日のまとめ
- 複数の結果は dict にまとめると扱いやすい
- for文で「箱の中」を順番に処理できる
- ログ形式は
label=valueが基本 - join を使うと 1行ログが簡単に作れる

コメント