Mengisih Senarai Kamus mengikut Nilai Kamus dalam Python
Mengisih senarai kamus mengikut nilai kunci tertentu ialah tugas biasa dalam pengaturcaraan Python. Ini membolehkan anda menyusun kamus dalam susunan yang bermakna, seperti mengikut abjad mengikut nama atau mengikut angka mengikut umur.
Penyelesaian
Untuk mengisih senarai kamus mengikut nilai daripada kunci tertentu, anda boleh menggunakan fungsi sorted() dengan parameter key=. Parameter ini mengambil fungsi yang mengekstrak nilai kunci yang diingini daripada setiap kamus.
Menggunakan Fungsi Lambda
Satu cara untuk melakukannya ialah menggunakan fungsi lambda , yang merupakan fungsi tanpa nama tanpa nama. Contohnya, untuk mengisih senarai kamus yang diberikan mengikut kekunci 'nama':
newlist = sorted(list_to_be_sorted, key=lambda d: d['name'])
Menggunakan operator.itemgetter
Sebagai alternatif, bukannya menentukan fungsi anda sendiri , anda boleh menggunakan fungsi operator.itemgetter, yang menyediakan cara yang mudah untuk mengekstrak nilai daripada objek. Contohnya:
from operator import itemgetter newlist = sorted(list_to_be_sorted, key=itemgetter('name'))
Isih Terbalik
Jika anda ingin mengisih dalam tertib menurun, anda boleh menambah argumen reverse=True pada fungsi sorted():
newlist = sorted(list_to_be_sorted, key=itemgetter('name'), reverse=True)
Ini akan mengembalikan senarai baharu yang mengandungi kamus yang diisih. Senarai asal kekal tidak diubah suai.
Atas ialah kandungan terperinci Bagaimana untuk Mengisih Senarai Kamus mengikut Nilai dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!