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

Pythonの辞書をソートする方法(キー・値で並び替える方法)を初心者向けに解説!

Pythonの辞書をソートする方法(キー・値で並び替える方法)
Pythonの辞書をソートする方法(キー・値で並び替える方法)

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

生徒

「先生、Pythonの辞書って何ですか?そして、その辞書を並べ替えたいんですけど、どうすればいいですか?」

先生

「Pythonの辞書は、『キー』と『値』がセットになったデータの集まりです。例えば、電話帳のようなもので、名前(キー)と電話番号(値)がペアになっています。辞書はもともと順番が決まっていないんですが、並べ替えもできますよ。」

生徒

「キーや値でどうやって並べ替えるんですか?簡単に教えてほしいです。」

先生

「わかりました。これからキーで並べ替える方法と値で並べ替える方法を、わかりやすく説明しますね!」

-

1. Pythonの辞書とは?基本のしくみを理解しよう

1. Pythonの辞書とは?基本のしくみを理解しよう
1. Pythonの辞書とは?基本のしくみを理解しよう

Pythonの辞書(dict)は、ものごとを「名前(キー)」と「意味(値)」のペアで保存するデータのかたまりです。例えば、果物の名前をキーにして、その色を値として保存することができます。

例えるなら、辞書は引き出しにしまったラベル付きの箱のようなものです。ラベルが「キー」で、箱の中身が「値」です。どの順番で箱をしまったかは気にせず、ラベルを見て中身を探します。

ただし、辞書はもともと順番が決まっていません。だから、そのままだと好きな順番に並べることはできません。

2. なぜ辞書をソート(並び替え)するの?

2. なぜ辞書をソート(並び替え)するの?
2. なぜ辞書をソート(並び替え)するの?

辞書の中身を見やすくしたいときや、特定の順番で処理したいときに並べ替えます。たとえば、名前のアルファベット順や、値の大きさ順に並べ替えることがよくあります。

パソコン初心者の方でも、データを整理する感覚で使えるので、並べ替えはとても役立ちます。

3. Pythonで辞書をキーで並べ替える方法

3. Pythonで辞書をキーで並べ替える方法
3. Pythonで辞書をキーで並べ替える方法

辞書をキーで並べ替えるには、sorted()(ソーティッド)という関数を使います。sorted()は「並べ替える」という意味です。

辞書のキーを取り出して、それをアルファベットや数字の順に並べ替えます。こうすると、キーの順番に沿った新しい辞書を作れます。

例を見てみましょう。


fruits = {"apple": 3, "banana": 1, "orange": 2}

# キーで並べ替えた辞書を作る
sorted_dict = {key: fruits[key] for key in sorted(fruits)}

print(sorted_dict)

このコードでは、sorted(fruits)がキーをアルファベット順に並べ替えます。その順番で辞書を作り直しているのです。

実行すると、次のように表示されます。


{'apple': 3, 'banana': 1, 'orange': 2}

元の辞書と比べると、キーがアルファベット順に並んでいますね。

4. Pythonで辞書を値で並べ替える方法

4. Pythonで辞書を値で並べ替える方法
4. Pythonで辞書を値で並べ替える方法

次に、値の大きさで辞書を並べ替える方法です。こちらもsorted()を使いますが、キーではなく「値」を見て並べ替えます。

ここで「キー」と「値」を混同しないようにしましょう。
辞書は「キー(名前)」と「値(中身)」のセットなので、今回は「値」を基準に並べ替えます。

コードを見てください。


fruits = {"apple": 3, "banana": 1, "orange": 2}

# 値で並べ替えた辞書を作る
sorted_dict_by_value = {k: v for k, v in sorted(fruits.items(), key=lambda item: item[1])}

print(sorted_dict_by_value)

ここで使っているfruits.items()は、辞書の中の「キーと値のペア」を取り出す方法です。
また、key=lambda item: item[1]は、「値(ペアの2番目)」を並べ替えの基準にする、という意味です。

実行すると、値が小さい順に並べ替えられた辞書が表示されます。


{'banana': 1, 'orange': 2, 'apple': 3}
-

5. もっとわかりやすく!辞書のソートの仕組みを日常生活で例えると?

5. もっとわかりやすく!辞書のソートの仕組みを日常生活で例えると?
5. もっとわかりやすく!辞書のソートの仕組みを日常生活で例えると?

辞書のソートを日常生活の例で考えてみましょう。

たとえば、家にいくつかの本があります。
「本のタイトル」がキー、「ページ数」が値だとします。

  • キー(タイトル)で並べ替える:タイトルのアルファベット順に本を並べる。
  • 値(ページ数)で並べ替える:ページ数が少ない順に本を並べる。

このように基準を変えるだけで、整理の仕方が変わります。Pythonの辞書ソートも同じ感覚です。

6. まとめないけど大事!辞書をソートする時に注意したいポイント

6. まとめないけど大事!辞書をソートする時に注意したいポイント
6. まとめないけど大事!辞書をソートする時に注意したいポイント

辞書は元々順番がないデータです。ソートすると新しい順番の辞書が作られますが、元の辞書自体は変わりません。

Python3.7以降は辞書が順番を保持するようになりましたが、それでも明示的にソートした辞書を新しく作ることが一般的です。

また、ソートの基準をしっかり理解してからコードを書くとミスを減らせます。今回紹介したsorted()lambdaの使い方は、他のデータ操作でも役立つ基本のテクニックです。

7. 練習問題:自分で辞書を作って並べ替えてみよう!

7. 練習問題:自分で辞書を作って並べ替えてみよう!
7. 練習問題:自分で辞書を作って並べ替えてみよう!

下のように自分で辞書を作って、キーで並べ替えたり値で並べ替えたりしてみてください。


my_dict = {"dog": 5, "cat": 3, "bird": 8}

# キーで並べ替え
sorted_by_key = {k: my_dict[k] for k in sorted(my_dict)}

# 値で並べ替え
sorted_by_value = {k: v for k, v in sorted(my_dict.items(), key=lambda x: x[1])}

print(sorted_by_key)
print(sorted_by_value)

これを自分で実行してみると、辞書の並べ替えがぐっと身近に感じられますよ。

まとめ

まとめ
まとめ

Pythonの辞書ソートを通して理解した基本の考え方

この記事では、Pythonの辞書をキーや値で並び替える方法について、初心者にも分かりやすい形で学んできました。Pythonの辞書は「キー」と「値」がセットになったデータ構造であり、リストやタプルとは異なり、データを名前で管理できる点が大きな特徴です。その一方で、辞書はそのままでは順番を意識して扱えないため、一覧表示や整理をしたい場面ではソートが必要になります。

キーで並べ替える方法では、sorted()関数を使ってキーを順番に並べ、その順序をもとに新しい辞書を作成しました。これにより、アルファベット順や数字の昇順といった、直感的に分かりやすい形でデータを確認できるようになります。Python初心者にとって、辞書のキーでソートする方法は、辞書構造を理解するうえで非常に重要なステップです。

値でソートすることで見えてくるデータの意味

辞書を値で並べ替える方法では、items()lambdaを組み合わせて、キーと値のペアを基準にソートしました。値でソートすることで、数値の大小や評価の高低など、データの中身そのものに注目した整理が可能になります。これは、Pythonでデータ分析や集計を行う際にも非常によく使われる考え方です。

以下は、今回の記事と同じ書き方を使った、値でソートするシンプルな例です。構文を繰り返し見ることで、辞書ソートの流れが自然と身についていきます。


scores = {"佐藤": 80, "鈴木": 95, "田中": 70}

sorted_scores = {k: v for k, v in sorted(scores.items(), key=lambda item: item[1])}

print(sorted_scores)

このように、値を基準に並べ替えることで、点数の低い順や高い順といった形でデータを整理できます。Pythonの辞書ソートは、単なる並び替えではなく、「どの基準でデータを見るか」を意識する練習にもなります。

辞書ソートを理解することの実用的なメリット

辞書をソートできるようになると、プログラムの見やすさや処理の分かりやすさが大きく向上します。例えば、設定情報をキー順に整理したり、集計結果を値の順番で表示したりといった場面で役立ちます。Pythonでは、辞書・リスト・タプルといったデータ構造を組み合わせて使うことが多いため、辞書のソートを理解しておくことで、より柔軟なプログラムが書けるようになります。

また、今回学んだsorted()lambdaの考え方は、辞書以外のデータ操作にも応用できます。Python初心者の段階でこれらの基本をしっかり押さえておくことで、今後の学習がスムーズに進みます。

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

生徒

「辞書は順番がないから難しそうだと思っていましたが、キーや値を基準に並べ替えられると分かって、すごく使いやすく感じました。」

先生

「それは良い気づきですね。Pythonの辞書は、そのままだと順番を意識しませんが、必要なときにソートすることで、整理された形で扱えます。」

生徒

「キーで並べ替える方法と、値で並べ替える方法の違いも理解できました。どちらを使うかで、見え方が全然変わりますね。」

先生

「その通りです。データをどう整理したいのかを考えて、ソートの基準を選ぶことが大切です。今回学んだ辞書のソートは、Pythonの基礎力を高めるうえでとても重要ですよ。」

生徒

「これからは、自分で作った辞書も積極的に並べ替えて、データの中身を確認するようにしてみます。」

コメント
コメント投稿は、ログインしてください

まだ口コミはありません。

関連記事:
カテゴリの一覧へ
新着記事
New1
PHP
PHPのマルチバイト文字列を正しく扱う方法!初心者向けにmb_strlenとmb_substrをやさしく解説
New2
PHP
PHP の break, continue の使い方を完全解説!初心者でもわかるループ制御
New3
Python
Pythonで日本の元号を扱う方法を徹底解説!令和・平成の変換もバッチリ対応
New4
Python
Pythonの三項演算子とは?一行で条件分岐を記述する方法
-
人気記事
No.1
Java&Spring記事人気No1
Python
Pythonで辞書のキー・値・アイテムを取得する方法(keys(), values())
No.2
Java&Spring記事人気No2
Python
Pythonでエラースタックトレースを表示・取得する方法を徹底解説!初心者向け例外処理入門
No.3
Java&Spring記事人気No3
Python
Pythonで辞書のネスト構造(入れ子辞書)を扱う方法 初心者向け完全ガイド
No.4
Java&Spring記事人気No4
Python
Pythonのライブラリとは?標準ライブラリとサードパーティライブラリの違いを初心者向けに解説!
No.5
Java&Spring記事人気No5
Python
PythonでMySQLに接続する方法を完全解説!初心者でもわかるpymysqlの基本
No.6
Java&Spring記事人気No6
PHP
PHPで画像ファイルをアップロードする方法を初心者向けに徹底解説!わかりやすい画像処理入門
No.7
Java&Spring記事人気No7
PHP
PHP の日付と時間の取得(date, time, strtotime)を完全解説!初心者でもわかる使い方
No.8
Java&Spring記事人気No8
PHP
PHP の基本構文(開始タグ・コメント・インデント)を完全ガイド!初心者向け解説
-
-