🟩 Python学習記録 #13|max() / min() でリストの最大値・最小値を理解する

Code

今回はリストの最大値・最小値を取得する方法として
max()min() を学習しました。

これまで合計を求める sum() を学習しましたが、
数値データを扱う上では
「一番大きい値」「一番小さい値」も非常によく使います。

Udemy の演習問題を通して、
その基本的な使い方と考え方を整理しました。


■ Udemy 演習問題(最大値)

問題

List の最大値を print してください。

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

■ 解答コード(max() を使う)

print(max(List))

実行結果

97

リストの中で
一番大きい数値がそのまま取得されていることが分かります。


■ 別解(sorted() を使う場合)

List = [35, 7, 26, 59, 55, 73, 90, 24, 13, 28, 20, 71, 8, 89, 81, 97, 39, 66, 42, 57]
print(sorted(List)[-1])

実行結果

97

sorted(List)
小さい順(昇順)に並び替えられるため、

  • 一番最後の要素 [-1]
    = 最大値

という考え方です。


■ なぜ max() を使うのか

sorted() を使っても最大値は求められますが、

  • 並び替えの処理が入る
  • 最大値を取りたい意図が分かりにくい

という点があります。

max(List)

と書いた方が、
「最大値を取得したい」意図が一目で分かると感じました。


■ Udemy 演習問題(最小値)

問題

List の最小値を print してください。


■ 解答コード(min() を使う)

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

実行結果

7

こちらも
一番小さい数値がそのまま取得されています。


■ max() / min() の正体を整理する

  • max():リストの中で一番大きい値を返す
  • min():リストの中で一番小さい値を返す

どちらも
for 文で1つずつ比較している処理を
内部でまとめて行ってくれている関数

と考えると理解しやすくなりました。


■ 今日のまとめ

  • max() は最大値を取得する
  • min() は最小値を取得する
  • sorted() でも代用できるが意図が分かりにくい
  • 「何をしたいか」が伝わる書き方が大切

数値データを扱う上で、
とても基本で重要な関数だと感じました。


🔜 次のステップ(#14)

合計・最大・最小が分かるようになると、
次は 平均値 を求めたくなります。

次回は
平均値(mean)をテーマに学習する予定です。

コメント

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