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

Pythonでリストの最小値・最大値を取得する方法!min()・max()の活用法

Pythonでリストの最小値・最大値を取得する方法!min()・max()の活用法
Pythonでリストの最小値・最大値を取得する方法!min()・max()の活用法

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

生徒

「Pythonでリストの中で一番小さい値とか、一番大きい値を調べたいんですが、どうやってやるんですか?」

先生

「Pythonでは、min()関数とmax()関数を使えば、リストの中の最小値や最大値を簡単に取得できますよ。」

生徒

「えっ、そんな便利な関数があるんですね!具体的にどう書けばいいんですか?」

先生

「では、実際のコードを使って基本的な使い方を説明していきましょう!」

1. Pythonのリストとは?

1. Pythonのリストとは?
1. Pythonのリストとは?

まず、リストとは、複数の値(データ)をまとめて管理できる入れ物のようなものです。例えば、いくつかの点数をまとめて保存したい場合などに便利です。

以下のように書きます。


scores = [85, 92, 78, 90, 88]

このリストscoresの中には、5つの点数が入っています。

2. min()関数で最小値を取得する方法

2. min()関数で最小値を取得する方法
2. min()関数で最小値を取得する方法

min()関数は、リストの中で一番小さい値(最小値)を取り出すときに使います。読み方は「ミン」と読みます。

使い方はとても簡単で、次のように書きます。


scores = [85, 92, 78, 90, 88]
smallest = min(scores)
print("最小値は", smallest)

最小値は 78

このように、リストscoresの中から78が最小値として取り出され、画面に表示されます。

3. max()関数で最大値を取得する方法

3. max()関数で最大値を取得する方法
3. max()関数で最大値を取得する方法

max()関数は、リストの中で一番大きい値(最大値)を取り出すための関数です。読み方は「マックス」です。

こちらも同じように使えます。


scores = [85, 92, 78, 90, 88]
largest = max(scores)
print("最大値は", largest)

最大値は 92

このように、最大値として92が表示されます。

4. 文字列リストにも使える?

4. 文字列リストにも使える?
4. 文字列リストにも使える?

実は、min()max()は、文字列のリストにも使うことができます。ただし、この場合は「文字の辞書順(じしょじゅん)」で判断されます。


fruits = ["apple", "banana", "peach", "grape"]
print("最小(辞書順):", min(fruits))
print("最大(辞書順):", max(fruits))

最小(辞書順): apple
最大(辞書順): peach

appleはアルファベット順で一番早く、peachが一番後になります。

5. 空のリストには注意!

5. 空のリストには注意!
5. 空のリストには注意!

もしmin()max()を使うときに、リストが空(なにも入っていない)だと、エラーになります。


empty = []
print(min(empty))

ValueError: min() arg is an empty sequence

このようなエラーは「バリューエラー」と呼ばれ、「値が正しくありません」という意味です。リストが空でないかを事前に確認するようにしましょう。

6. 応用:min()やmax()を使った計算

6. 応用:min()やmax()を使った計算
6. 応用:min()やmax()を使った計算

たとえば、テストの点数のうち、一番悪い点数と一番良い点数を除いた平均を出したいときにもmin()max()が役立ちます。


scores = [70, 80, 90, 100, 60]
scores.remove(min(scores))
scores.remove(max(scores))
average = sum(scores) / len(scores)
print("中間の平均点は", average)

中間の平均点は 83.33333333333333

このように、最低点と最高点を取り除いた後に平均を出すことで、より公平な値を求めることができます。

まとめ

まとめ
まとめ

今回の記事では、Pythonのリストから最小値最大値を取得する方法として、min()関数とmax()関数の基本的な使い方から応用例までを詳しく学びました。Pythonでプログラミングを行ううえで、数値データの中から一番小さい値や一番大きい値を調べる処理は非常に登場頻度が高く、データ分析や集計処理、条件分岐の判断材料としても欠かせない要素です。 リストは複数のデータをまとめて扱える便利なデータ構造ですが、その中身を効率よく比較・判断するために、min()やmax()といった組み込み関数が用意されています。これらの関数を使えば、for文で一つずつ比較する必要がなく、短く読みやすいコードで最小値・最大値を取得できます。特にPython初心者にとっては、「こんなに簡単に書けるのか」と驚くポイントの一つでしょう。 記事内では、数値のリストだけでなく、文字列のリストにもmin()・max()が使えることを確認しました。文字列の場合は辞書順で比較されるため、アルファベット順や文字コード順で最小・最大が決まる点を理解しておくことが大切です。また、空のリストに対してmin()やmax()を使うとValueErrorが発生するという注意点も重要なポイントです。実際のプログラムでは、リストが空かどうかを事前に確認する処理と組み合わせることで、安全なコードを書くことができます。 さらに応用例として、最小値と最大値を取り除いた平均値の計算も紹介しました。このように、min()・max()は単体で使うだけでなく、remove()sum()len()と組み合わせることで、より実用的なデータ処理が可能になります。テストの点数処理、センサーの計測値の補正、アンケート結果の集計など、実務や学習のさまざまな場面で役立つ考え方です。 Pythonのリスト操作において、min()・max()を正しく使いこなせるようになると、「Python リスト 最小値 取得」「Python リスト 最大値 求め方」「Python min max 使い方 初心者」といったテーマにも自然と対応できるようになります。今回学んだ内容は、今後の条件分岐、繰り返し処理、データ分析の基礎として何度も登場する重要な知識ですので、ぜひ繰り返し復習して身につけてください。

サンプルプログラムで振り返ろう


scores = [65, 78, 90, 82, 88]

print("最小値:", min(scores))
print("最大値:", max(scores))

# 最小値と最大値を除いた平均
scores.remove(min(scores))
scores.remove(max(scores))
average = sum(scores) / len(scores)
print("平均との差し引き後の平均:", average)

このサンプルプログラムでは、min()とmax()を使った基本的な最小値・最大値の取得と、それらを応用した平均値計算をまとめて確認できます。実際に数値を変更しながら試すことで、関数の動きやリスト操作への理解がより深まるでしょう。

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

生徒

「min()とmax()を使うと、一番小さい値と大きい値がすぐ分かって便利ですね。」

先生

「そうですね。Pythonでは、よく使う処理が関数として用意されているのが大きな特徴です。」

生徒

「文字列のリストでも使えるのは意外でした。辞書順で比べているんですね。」

先生

「その理解はとても大切です。数値と文字列で挙動が違う点は、しっかり覚えておきましょう。」

生徒

「空のリストだとエラーになるのも注意が必要ですね。」

先生

「その通りです。実際のプログラムでは、事前チェックと組み合わせることで安全な処理が書けますよ。」

カテゴリの一覧へ
新着記事
New1
Flask
Flaskでデータベースエラーを処理する方法!初心者にもわかる例外の使い方
New2
Flask
FlaskでリダイレクトやURL生成を行う方法!便利な関数の使い方を解説
New3
Flask
FlaskでPOSTリクエストを受け取る方法!初心者でもわかるJSONデータの受け取り方
New4
Flask
Flask‑Mailの使い方!アプリからメールを送信する基本方法を解説
人気記事
No.1
Java&Spring記事人気No1
Django
Django環境構築の全手順を完全解説!初心者でも迷わないPython・Djangoセットアップガイド
No.2
Java&Spring記事人気No2
Django
DjangoとFlaskの違いを完全比較!初心者でもわかるPythonフレームワーク入門
No.3
Java&Spring記事人気No3
Python
Pythonでリストをコピーする方法!copy()・スライス・list()の使い方を比較
No.4
Java&Spring記事人気No4
Python
Pythonの文字列を1文字ずつ処理する方法!for文やlist化の活用例
No.5
Java&Spring記事人気No5
Flask
FlaskアプリをNginx + Gunicornで本番運用する方法!初心者でもわかるデプロイ構成の基本
No.6
Java&Spring記事人気No6
Python
PythonでHello Worldを表示するには?初心者向けに最初の1行を実行してみよう
No.7
Java&Spring記事人気No7
Python
Pythonで空白や不要な文字を削除する方法!strip(), rstrip(), lstrip() の使い方を初心者向けに解説
No.8
Java&Spring記事人気No8
Python
Pythonのmatch文(パターンマッチング)とは?switch文の代替としての使い方をやさしく解説