Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Python

วิธีจัดเรียงรายการพจนานุกรมตามค่าใน Python โดยใช้ itemgetter


เมื่อจำเป็นต้องเรียงลำดับรายการพจนานุกรมตามค่า คุณสามารถใช้แอตทริบิวต์ 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}]

คำอธิบาย

  • แพ็คเกจที่จำเป็นจะถูกนำเข้า

  • รายการองค์ประกอบพจนานุกรมถูกกำหนดและแสดงบนคอนโซล

  • ใช้วิธีการเรียงลำดับและระบุคีย์เป็น 'itemgetter'

  • รายการพจนานุกรมถูกจัดเรียงอีกครั้งโดยใช้ itemgetter เป็นสองพารามิเตอร์

  • เอาต์พุตจะแสดงบนคอนโซล