Isih Senarai Kamus mengikut Nilai Kamus dalam Python
Isih senarai kamus berdasarkan nilai kunci tertentu boleh timbul dalam pelbagai senario pengaturcaraan. Pertimbangkan senarai contoh kamus yang mewakili individu dan umur mereka:
input_list = [{'name': 'Homer', 'age': 39}, {'name': 'Bart', 'age': 10}]
Isih senarai ini mengikut nama akan menghasilkan output berikut:
sorted_list = [{'name': 'Bart', 'age': 10}, {'name': 'Homer', 'age': 39}]
Penyelesaian:
Fungsi sorted() Python menyediakan cara yang mudah untuk mengisih struktur data dengan menggunakan pengisihan tersuai peraturan. Untuk mengisih senarai kamus mengikut nilai kunci tertentu, gunakan parameter key=.
Kaedah 1: Menggunakan Fungsi Lambda
Parameter key= mengharapkan fungsi yang mengambil kamus sebagai input dan mengembalikan nilai kunci yang digunakan untuk mengisih. Kod berikut menggunakan fungsi lambda:
sorted_list = sorted(input_list, key=lambda d: d['name'])
Kaedah 2: Menggunakan itemgetter
Sebagai alternatif kepada mentakrifkan fungsi lambda, anda boleh menggunakan operator.itemgetter () fungsi:
from operator import itemgetter sorted_list = sorted(input_list, key=itemgetter('name'))
Isih dalam Menurun Tertib
Untuk mengisih dalam tertib menurun, nyatakan reverse=True dalam fungsi sorted():
sorted_list = sorted(input_list, key=itemgetter('name'), reverse=True)
Atas ialah kandungan terperinci Bagaimanakah Saya Boleh Isih Senarai Kamus mengikut Nilai Kunci Tertentu dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!