Mengisih Senarai Senarai mengikut Elemen Senarai Dalaman Tertentu
Untuk mengisih senarai senarai berdasarkan indeks tertentu dalam setiap senarai dalaman , Python menyediakan beberapa pendekatan. Satu kaedah yang biasa digunakan melibatkan penggunaan fungsi itemgetter() modul operator.
Penyelesaian Menggunakan itemgetter():
Fungsi itemgetter() daripada modul operator membolehkan anda untuk secara terpilih mengekstrak elemen tertentu daripada senarai atau tupel. Dengan menghantar fungsi itemgetter() sebagai argumen kepada fungsi sorted(), anda boleh mengisih senarai luar mengikut elemen dalaman yang dikehendaki:
from operator import itemgetter L = [[0, 1, 'f'], [4, 2, 't'], [9, 4, 'afsd']] sorted(L, key=itemgetter(2))
Coretan kod ini akan mengisih senarai L berdasarkan elemen rentetan pada indeks kedua setiap senarai dalaman. Senarai diisih yang terhasil ialah:
[[9, 4, 'afsd'], [0, 1, 'f'], [4, 2, 't']]
Penyelesaian Alternatif Menggunakan Fungsi Lambda:
Sebagai alternatif, anda boleh menggunakan fungsi lambda untuk mencapai gelagat pengisihan yang sama:
sorted(L, key=lambda x: x[2])
Walau bagaimanapun, dalam kes mudah ini, menggunakan fungsi lambda adalah lebih perlahan berbanding itemgetter().
Atas ialah kandungan terperinci Bagaimana untuk Mengisih Senarai Senarai mengikut Elemen Senarai Dalaman Khusus dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!