Python辞書のソート方法
Pythonで辞書をソートする方法:
- dictのキーや値の並び替えには、sorted()関数が利用できます。例えば、dictのキーを並び替えるには次のようにsorted()を利用します:
d = {'b': 2, 'a': 1, 'c': 3}
sorted_keys = sorted(d.keys())
ネイティブな日本語で言い換えると:結果として「a」、「b」、「c」が出力されます
または、辞書内の値をソートします。
d = {'b': 2, 'a': 1, 'c': 3}
sorted_values = sorted(d.values())
出力を [1, 2, 3] とします
- itemgetter()関数を用いる: itemgetter()関数を使って辞書をソートすることができ、辞書のキーまたは値に基づいてソートすることができます。たとえば、辞書のキーに基づいてソートする場合:
from operator import itemgetter
d = {'b': 2, 'a': 1, 'c': 3}
sorted_items = sorted(d.items(), key=itemgetter(0))
結果は[(‘a’, 1), (‘b’, 2), (‘c’, 3)]となる
辞書の値によって並べ替える:
from operator import itemgetter
d = {'b': 2, 'a': 1, 'c': 3}
sorted_items = sorted(d.items(), key=itemgetter(1))
[(“a”, 1), (“b”, 2), (“c”, 3)]
- ラムダ関数を使ってみる:ラムダ関数を使うと辞書をソートすることができます。辞書のキーや値でソートできます。たとえば、キーでソートを行います。
d = {'b': 2, 'a': 1, 'c': 3}
sorted_items = sorted(d.items(), key=lambda x: x[0])
出力は [(‘a’, 1), (‘b’, 2), (‘c’, 3)] になります
辞書の値でソート
d = {'b': 2, 'a': 1, 'c': 3}
sorted_items = sorted(d.items(), key=lambda x: x[1])
(’a’, 1), (‘b’, 2), (‘c’, 3) の出力結果です。
必要に応じて適切な方法を選択することで、辞書を並べ替えることが可能となる。