Python | 辞書のリストで指定したキー名の値でソートする方法
Pythonのsorted()
関数を利用して辞書のリストにあるキー名でソートする方法とサンプルコードを紹介しています。
確認環境
Windows11 ローカル
Python python-3.11.1
sorted()関数で辞書のリストにあるキー名でソートする
Pythonで辞書のリストにあるキー名でソートするにはsorted()
関数が利用可能です。
第一引数には、対象にする辞書のリスト、第二引数にはlambda
式を記述します。
シンプルな構造のリストであれば、次ようなコードで指定したキー名にある値で辞書のリストをソートする事が可能です。
下記サンプルコードではキー名「val」の値でソートされた辞書のリストが返されている事が確認できます。
data = [{'name': 'Apple', 'val': 100}, {'name': 'Banan', 'val': 50}, {'name': 'Pine', 'val': 150}]
data2 = sorted(data, key=lambda x: x['val'])
print(data2)
# [{'name': 'Banan', 'val': 50}, {'name': 'Apple', 'val': 100}, {'name': 'Pine', 'val': 150}]
辞書ではない値がリストに入っていた場合、TypeError が出力されます。
TypeError: 'type' object is not subscriptable
タイプエラー:’type' オブジェクトは添字可能ではありません
このエラーの詳細については以下のページで紹介しています。
関連:Python | ‘type’ object is not subscriptable エラーの原因と解決策 | ONE NOTES
ディスカッション
コメント一覧
まだ、コメントがありません