如何使用 itemgetter 根據值對 Python 字典列表進行排序


當需要根據值對字典列表進行排序時,可以使用 itemgetter 屬性。

以下對其進行演示 −

示例

 線上演示

from operator import itemgetter

my_list = [{ "name" : "Will", "age" : 56},
          { "name" : "Rob", "age" : 20 },
          { "name" : "Mark" , "age" : 34 },
          { "name" : "John" , "age" : 24 }]

print("The list sorted by age is : ")
print(sorted(my_list, key=itemgetter('age')))

print("The list sorted by age and name is : ")
print(sorted(my_list, key=itemgetter('age', 'name')))

print("The list sorted by age in descending order is : ")
print(sorted(my_list, key=itemgetter('age'),reverse = True))

輸出

The list sorted by age is :
[{'name': 'Rob', 'age': 20}, {'name': 'John', 'age': 24}, {'name': 'Mark', 'age': 34}, {'name': 'Will',
'age': 56}]
The list sorted by age and name is :
[{'name': 'Rob', 'age': 20}, {'name': 'John', 'age': 24}, {'name': 'Mark', 'age': 34}, {'name': 'Will',
'age': 56}]
The list sorted by age in descending order is :
[{'name': 'Will', 'age': 56}, {'name': 'Mark', 'age': 34}, {'name': 'John', 'age': 24}, {'name': 'Rob',
'age': 20}]

說明

  • 匯入了必要的包。

  • 定義了字典元素列表,並在控制檯上顯示。

  • 使用了 sorted 方法,並將鍵指定為“itemgetter”。

  • 再次使用 itemgetter 作為兩個引數對字典列表進行排序。

  • 輸出顯示在控制檯上。

更新日期: 2021 年 4 月 17 日

588 次瀏覽

開啟你的 職業生涯

透過完成課程獲得認證

開始
廣告
© . All rights reserved.