Rumah > pembangunan bahagian belakang > Tutorial Python > Bagaimana untuk Mengisih Senarai Senarai mengikut Elemen Senarai Dalaman Khusus dalam Python?

Bagaimana untuk Mengisih Senarai Senarai mengikut Elemen Senarai Dalaman Khusus dalam Python?

DDD
Lepaskan: 2024-11-16 02:01:03
asal
939 orang telah melayarinya

How to Sort a List of Lists by a Specific Inner List Element in Python?

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))
Salin selepas log masuk

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']]
Salin selepas log masuk

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])
Salin selepas log masuk

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!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan