Rumah  >  Artikel  >  pembangunan bahagian belakang  >  Pelajari kemahiran fungsi lambda dalam Python dengan cepat

Pelajari kemahiran fungsi lambda dalam Python dengan cepat

WBOY
WBOYasal
2024-02-03 11:03:06491semak imbas

Pelajari kemahiran fungsi lambda dalam Python dengan cepat

Pelajari kemahiran aplikasi fungsi lambda dalam Python dengan cepat, anda memerlukan contoh kod khusus

Dalam bahasa pengaturcaraan Python, fungsi lambda ialah fungsi tanpa nama berdasarkan ungkapan, yang boleh memudahkan proses pengekodan dan meningkatkan kebolehbacaan dan Kebolehselenggaraan. Artikel ini akan memperkenalkan penggunaan asas fungsi lambda dan menunjukkan kemahiran aplikasinya dalam pembangunan sebenar melalui contoh kod tertentu.

  1. Sintaks asas

Sintaks asas fungsi lambda ialah: senarai parameter lambda: ungkapan

Antaranya, senarai parameter mewakili parameter input fungsi, dan ungkapan ialah ungkapan yang beroperasi pada parameter untuk diperolehi hasilnya. Fungsi lambda boleh menerima sebarang bilangan parameter tetapi hanya boleh mengembalikan hasil.

Berikut ialah contoh fungsi lambda mudah yang mengira jumlah dua nombor:

jumlah = lambda x, y: x + y
cetak(jumlah(3, 5)) # Output 8

  1. Isih senarai

Fungsi lambda sering digunakan dalam pengisihan senarai, dan parameter utama digunakan untuk menentukan asas untuk pengisihan. Berikut ialah contoh untuk mengisih set nombor dalam tertib menaik:

nums = [1, 5, 3, 2, 4]
sorted_nums = sorted(nums, key=lambda x: x)
print(sorted_nums) # Output [ 1, 2, 3, 4, 5]

  1. Penapisan senarai

Fungsi lambda juga boleh digunakan untuk menapis senarai dan hanya mengekalkan elemen yang memenuhi syarat. Berikut ialah contoh untuk menapis nombor yang lebih besar daripada 5:

nums = [1, 5, 3, 8, 2, 6]
filtered_nums = list(filter(lambda x: x print (filtered_nums) # Output [1, 5, 3, 2]

  1. Pemetaan senarai

Fungsi lambda boleh digunakan untuk memetakan setiap elemen dalam senarai untuk mendapatkan senarai baharu. Berikut ialah contoh mendarab set nombor dengan 2:

nums = [1, 5, 3, 2, 4]
mapped_nums = list(map(lambda x: x * 2, nums))
print(mapped_nums ) # Output [2, 10, 6, 4, 8]

  1. berfungsi sebagai parameter

Sesuatu yang hebat tentang fungsi lambda ialah ia boleh dihantar sebagai parameter kepada fungsi lain. Berikut ialah contoh menggunakan fungsi sort_by tersuai untuk mengisih set rentetan mengikut panjang:

def sort_by_length(strings):

return sorted(strings, key=lambda x: len(x))

strings = ["epal", "pisang", "ceri", "tarikh" ]
sorted_strings = sort_by_length(strings)
print(sorted_strings) # Output ['tarikh', 'epal', 'ceri', 'pisang']

  1. Fungsi lambda kompleks

fungsi lambda boleh menjadi operasi yang sangat fleksibel, termasuk operasi Aritmetik asas , pertimbangan bersyarat, logik kompleks, dsb. Berikut ialah contoh membahagikan set nombor kepada dua senarai nombor positif dan negatif berdasarkan pertimbangan bersyarat:

nums = [-1, 2, -3, 4, -5]
positive_nums = list(filter(lambda) x: x > 0, angka))
nombor_negatif = senarai(penapis(lambda x: x cetak(nombor_positif) # Output [2, 4]
cetak(nombor_negatif) # Output [-1 , -3 , -5]

Ringkasan:

Melalui contoh kod khusus di atas, kami telah mempelajari tentang kemahiran aplikasi fungsi lambda dalam Python. Fungsi Lambda boleh memudahkan penulisan kod dan amat sesuai untuk fungsi mudah seperti pengisihan, penapisan dan pemetaan. Pada masa yang sama, fungsi lambda juga boleh dihantar sebagai parameter kepada fungsi lain, dan ia juga boleh memainkan peranan penting dalam beberapa senario pengaturcaraan yang kompleks.

Perlu diingat bahawa walaupun fungsi lambda adalah mudah, ia juga perlu digunakan dengan berhati-hati. Untuk logik dan operasi yang lebih kompleks, adalah disyorkan untuk menggunakan fungsi bernama konvensional untuk meningkatkan kebolehbacaan dan kebolehselenggaraan kod.

Atas ialah kandungan terperinci Pelajari kemahiran fungsi lambda dalam Python dengan cepat. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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