Rumah >pembangunan bahagian belakang >Tutorial Python >Bagaimanakah sintaks `sorted(key=lambda: ...)` berfungsi dalam Python?
Memahami Sintaks sorted(key=lambda: ...)
Fungsi sorted() dalam Python membolehkan anda mengisih senarai berdasarkan kunci pengisihan tersuai. Argumen utama mengambil boleh panggil yang menentukan cara setiap elemen harus dibandingkan untuk pengisihan. Apabila boleh panggil ini ialah fungsi lambda, sintaksnya mengikut corak tertentu:
key=lambda variable: variable[index]
Sintaks Fungsi Lambda
Fungsi lambda ialah fungsi tanpa nama, ditakrifkan menggunakan lambda , yang menerima pembolehubah atau berbilang pembolehubah sebagai input dan melakukan pengiraan atau operasi. Sintaks fungsi lambda ialah:
lambda input_variable(s): expression
Argumen Utama dalam sorted()
Argumen utama dalam sorted() mengambil yang boleh dipanggil, dan dalam kes kami , yang boleh dipanggil ialah fungsi lambda. Fungsi lambda digunakan pada setiap elemen dalam senarai, dan hasilnya digunakan untuk membandingkan elemen untuk pengisihan.
Memahami Sintaks
Pembolehubah dalam fungsi lambda diperuntukkan kepada setiap elemen senarai apabila fungsi itu berulang melalui senarai. Pembolehubah diikuti oleh titik bertindih (:), yang diikuti dengan ungkapan yang mengekstrak nilai yang akan digunakan untuk mengisih. Dalam contoh yang disediakan, ungkapan sedang mengakses elemen pertama setiap elemen dalam senarai, diwakili sebagai pembolehubah[0].
Mengapa "pembolehubah" Dinyatakan Dua Kali
Pembolehubah dinyatakan dua kali kerana fungsi lambda menggunakan satu titik bertindih (:) sebagai pemisah antara pembolehubah input dan ungkapan. Pembolehubah pertama, sebelum titik bertindih, diberikan elemen senarai, dan pembolehubah kedua, selepas bertindih, diberikan ungkapan yang mengekstrak nilai pengisihan.
Contoh
Pertimbangkan contoh berikut:
<code class="python">mylist = [(3, 6), (2, 5), (1, 4)] sorted(mylist, key=lambda x: x[0])</code>
Dalam contoh ini, fungsi lambda lambda x: x[0] mengekstrak elemen pertama setiap tupel dalam senarai saya. Senarai yang diisih kemudiannya akan disusun mengikut elemen pertama tupel dalam tertib menaik.
Kesimpulan
Sintaks sorted(key=lambda: ...) melibatkan penggunaan fungsi lambda untuk menentukan kunci pengisihan tersuai. Fungsi lambda menerima pembolehubah input, yang diperuntukkan kepada setiap elemen senarai, dan mengekstrak nilai daripada elemen itu untuk digunakan untuk mengisih. Memahami sintaks ini dan gelagat fungsi lambda dalam fungsi sorted() adalah penting untuk mengisih senarai dengan berkesan berdasarkan kriteria tersuai.
Atas ialah kandungan terperinci Bagaimanakah sintaks `sorted(key=lambda: ...)` berfungsi dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!