Pythonで辞書をソートする方法

Pythonでは、sorted()関数を使用して辞書をソートできます。辞書は無順序であり、そのキーは順序付けられていないため、辞書をソートすると、実際には辞書のキーがソートされます。

以下では、辞書におけるキーの並べ替えの例を示します。

my_dict = {"b": 2, "a": 1, "c": 3}
sorted_dict = dict(sorted(my_dict.items()))
print(sorted_dict)

ネイティブの日本語で言い換えるとこうなります

{'a': 1, 'b': 2, 'c': 3}

辞書の値でソートしたい場合は、sorted() 関数のキー引数でソート基準を指定できます。例えば、辞書の値を昇順にソートする場合は、以下のコードを使用できます。

my_dict = {"b": 2, "a": 1, "c": 3}
sorted_dict = dict(sorted(my_dict.items(), key=lambda x: x[1]))
print(sorted_dict)

ネイティブな日本語で文を言い換えるだけで、1つのオプションがあれば十分です。

{'a': 1, 'b': 2, 'c': 3}

上記コードでは、key引数にラムダ式を用いてソートの基準を指定しており、x[1]は辞書の値でソートすることを表す。

辞書の値を降順にソートするには、次のコードを使用します。

my_dict = {"b": 2, "a": 1, "c": 3}
sorted_dict = dict(sorted(my_dict.items(), key=lambda x: x[1], reverse=True))
print(sorted_dict)

結果を出力する

{'c': 3, 'b': 2, 'a': 1}

上のコードでは、 `reverse` パラメータを `True` に設定することで降順に並べ替えています。

bannerAds