【Python】辞書の並び替えについて学ぼう

python

本記事ではpythonの辞書の並び替えについて解説しています。
目次は以下の通りです。

辞書とは

辞書はリストとかと似ていて、複数のデータを一つのかたまりで表せる型です。ただ、一番の違いとしてはキーと値という要素があり、これらが対応している点です。辞書の作り方は以下の通りです。

'辞書名' ={'キー1':'値1','キー2':'値2','キー3':'値3',...}

表記の注意点として辞書で利用するかっこの種類は{ }です。ちなみに[ ]はリスト、( )はタプルという意味になります。

キーの並び替え

キーの並び替えのときは以下の構文を用います。

sorted('辞書名'.items())

具体例を以下に示します。

dic1={'りんご':80,'みかん':110,'ぶどう':100,'いちご':140}
print(sorted(dic1.items()))

出力結果:[(‘いちご’, 140), (‘ぶどう’, 100), (‘みかん’, 110), (‘りんご’, 80)]

逆方向で並べるには、リストと同じようにreverse=Trueとすれば問題ないです。したがって次のようになります。

dic1={'りんご':80,'みかん':110,'ぶどう':100,'いちご':140}
print(sorted(dic1.items(),reverse=True))

出力結果:[(‘りんご’, 80), (‘みかん’, 110), (‘ぶどう’, 100), (‘いちご’, 140)]

値の並び替え

値の並び替えのときは以下の構文を用います。

sorted('辞書名'.items(),key=lambda x:x[1])

具体例を以下に示します。

dic1={'りんご':80,'みかん':110,'ぶどう':100,'いちご':140}
print(sorted(dic1.items(),key=lambda x:x[1]))

出力結果:[(‘りんご’, 80), (‘ぶどう’, 100), (‘みかん’, 110), (‘いちご’, 140)]

逆方向で並べるには、リストと同じようにreverse=Trueとすれば問題ないです。したがって次のようになります。

dic1={'りんご':80,'みかん':110,'ぶどう':100,'いちご':140}
print(sorted(dic1.items(),key=lambda x:x[1],reverse=True))

出力結果:[(‘いちご’, 140), (‘みかん’, 110), (‘ぶどう’, 100), (‘りんご’, 80)]

注意点

上の出力結果を見ると[ ]で囲われていることがわかります。これはリストを意味し、実際辞書を入れかえるとリストになります。なので、そこの点は注意しましょう。

まとめ

本記事のポイントを以下にまとめます。

・キーを並び替えるときはsorted(‘辞書名’.items())
・値を並び替えるときはsorted(‘辞書名’.items(),key=lambda x:x[1])
・並び替えたあとはリスト型になる

コメント

タイトルとURLをコピーしました