Python 3 で辞書をキーでソートする方法は?

PYTHON3 チュートリアル

Python 3で辞書の値を基準にソートする方法

Python では辞書の値に基づいて項目をソートする方法がいくつかあります。ここでは、主に sorted() 関数を使用した方法を紹介します。この関数はソートの基準となるキーを指定することで、辞書の値に基づいてソートを行うことができます。

サンプルコード1: 辞書を値で昇順にソート

以下の例では、辞書の値に基づいてキーを昇順にソートします。

# 辞書の定義
my_dict = {'apple': 5, 'orange': 2, 'banana': 4}

# 値に基づいてキーを昇順にソート
sorted_dict = sorted(my_dict.items(), key=lambda x: x[1])
print(sorted_dict)

出力:

[('orange', 2), ('banana', 4), ('apple', 5)]

サンプルコード2: 辞書を値で降順にソート

次の例では、辞書の値に基づいてキーを降順にソートします。

# 辞書の定義
my_dict = {'apple': 5, 'orange': 2, 'banana': 4}

# 値に基づいてキーを降順にソート
sorted_dict = sorted(my_dict.items(), key=lambda x: x[1], reverse=True)
print(sorted_dict)

出力:

[('apple', 5), ('banana', 4), ('orange', 2)]

サンプルコード3: 辞書の値が複数の要素を持つ場合のソート

辞書の値がリストやタプルのような複数の要素を含む場合、特定の要素でソートすることもできます。

# 辞書の定義
my_dict = {'apple': (3, 2), 'orange': (2, 5), 'banana': (1, 4)}

# タプルの第二要素でソート
sorted_dict = sorted(my_dict.items(), key=lambda x: x[1][1])
print(sorted_dict)

出力:

[('apple', (3, 2)), ('banana', (1, 4)), ('orange', (2, 5))]

これらの方法を使えば、Python で辞書の値を基準にソートすることが簡単にできます。ソート基準をカスタマイズするために lambda 関数を利用することで、より複雑なデータ構造に対しても柔軟に対応することが可能です。

購読
通知
0 Comments
Inline Feedbacks
View all comments