本記事では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])
・並び替えたあとはリスト型になる
コメント