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

วิธีจัดเรียง Python Dictionary ตามชนิดข้อมูล

คุณสามารถจัดเรียงลิสต์ของ dictionary ตามค่าของ dictionary โดยใช้ฟังก์ชัน sorted และส่ง lambda ที่บอกว่าจะใช้คีย์ไหนสำหรับการจัดเรียง ตัวอย่างเช่น:

A = [{'name':'john','age':45},
     {'name':'andi','age':23},
     {'name':'john','age':22},
     {'name':'paul','age':35},
     {'name':'john','age':21}]
new_A = sorted(A, key=lambda x: x['age'])
print(new_A)

ผลลัพธ์:

[{'name': 'john', 'age': 21}, {'name': 'john', 'age': 22}, {'name': 'andi', 'age': 23}, {'name': 'paul', 'age': 35}, {'name': 'john', 'age': 45}]

คุณยังสามารถจัดเรียงแบบ in-place ได้โดยใช้ฟังก์ชัน sort แทน sorted ตัวอย่างเช่น:

A = [{'name':'john','age':45},
     {'name':'andi','age':23},
     {'name':'john','age':22},
     {'name':'paul','age':35},
     {'name':'john','age':21}]
A.sort(key=lambda x: x['age'])
print(A)

ผลลัพธ์:

[{'name': 'john', 'age': 21}, {'name': 'john', 'age': 22}, {'name': 'andi', 'age': 23}, {'name': 'paul', 'age': 35}, {'name': 'john', 'age': 45}]