🟩 Python関数の作り方|計算結果をdictで返す方法【初心者向け】

Python

📚 Python学習ロードマップ
(初心者→ログ設計まで体系的に学べます)
https://run-ride-code.com/python-selfstudy-roadmap/


はじめに

Pythonでデータを処理するとき、

  • 件数(count)
  • 合計(sum)
  • 平均(avg)
  • 判定(OK / WARN / ERROR)

などの計算結果を扱うことがあります。

これまでは

  • len()
  • sum()
  • 平均値の計算
  • 条件分岐(if / else)

をそれぞれ個別に書いてきました。

今回はそれらを 1つの関数にまとめる方法を学習します。

関数にまとめることで

  • 処理が整理される
  • 表示が読みやすくなる
  • 実務に近いコードになる

というメリットがあります。


今回のテーマ

今回のテーマは

計算結果を dict にまとめて返す関数を作ること

です。

関数の戻り値として

  • 件数(count)
  • 合計(sum)
  • 平均(avg)
  • 判定結果(level)

1つのデータとして返します。


使用するデータ

numbers = [35, 7, 26, 59, 55, 73, 90, 24, 13, 28,
20, 71, 8, 89, 81, 97, 39, 66, 42, 57]

関数の実装

def calc_stats(numbers):    count = len(numbers)
total = sum(numbers)
avg = int(total / count) if avg >= 70:
level = 'OK'
elif avg >= 50:
level = 'WARN'
else:
level = 'ERROR' result = {
'count': count,
'sum': total,
'avg': avg,
'level': level
} return result

ポイント

この関数では次のことを行っています。

① 計算処理を関数内にまとめる

  • 件数
  • 合計
  • 平均
  • 判定

をすべて関数内で処理しています。


② dictで結果を整理する

result = {
'count': count,
'sum': total,
'avg': avg,
'level': level
}

このようにすることで

複数の値を1つのデータとして扱えるようになります。


③ returnでまとめて返す

return result

これにより

関数の呼び出し側では
結果を1つの変数で受け取ることができます。


関数の呼び出しと表示

stats = calc_stats(numbers)

print(f"[{stats['level']}] count={stats['count']} sum={stats['sum']} avg={stats['avg']}")

実行結果

[WARN] count=20 sum=980 avg=49

dictで返すメリット

もし値を個別に返す場合は

return count, total, avg, level

となります。

この場合、

  • どの値が何を意味するのか
  • コードを見ただけでは分かりにくい

という問題があります。

一方、dictを使うと

stats['avg']
stats['level']

のように
意味を持った形でアクセスできるのが大きなメリットです。


今日の学び

今回のポイントは次の3つです。

  • 計算処理は 関数にまとめる
  • 結果は dictで整理する
  • 表示は 関数の外で行う

このように

処理 → 結果 → 表示

を分けることで
読みやすく再利用できるコードになります。


次のステップ

次の学習としては

  • 空のリストが来た場合の対策(例外処理)
  • 判定条件を引数で変更できるようにする
  • ログ出力専用の関数を作る

などに進むと、さらに理解が深まります。


📚 Python学習ロードマップ
(初心者→ログ設計まで体系的に学べます)
https://run-ride-code.com/python-selfstudy-roadmap/


コメント

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