Python, yang terkenal dengan kesederhanaan dan kebolehbacaannya, menawarkan ciri berkuasa yang dipanggil fungsi lambda. Fungsi kecil tanpa nama ini menyediakan cara ringkas untuk menyatakan fungsi mudah tanpa memerlukan definisi fungsi penuh. Dalam artikel ini, kami akan meneroka apakah fungsi lambda, cara ia berfungsi dan memberikan contoh untuk menggambarkan kes penggunaannya.
Fungsi lambda ialah fungsi kecil tanpa nama yang ditakrifkan menggunakan kata kunci lambda. Ia boleh mengambil sebarang bilangan hujah tetapi hanya boleh mempunyai satu ungkapan. Sintaksnya adalah seperti berikut:
lambda arguments: expression
Fungsi Lambda amat berguna dalam pengaturcaraan berfungsi, di mana fungsi dianggap sebagai warga kelas pertama. Ini bermakna anda boleh menghantarnya sebagai argumen, mengembalikannya daripada fungsi lain atau menetapkannya kepada pembolehubah.
Berikut ialah cara untuk mentakrif dan menggunakan fungsi lambda asas yang menambah dua nombor:
add = lambda x, y: x + y result = add(3, 5) print(result) # Output: 8
Dalam contoh ini, fungsi tambah mengambil dua argumen dan mengembalikan jumlahnya.
Fungsi map() menggunakan fungsi yang diberikan kepada semua item dalam iterable. Begini cara anda boleh menggunakan fungsi lambda dengan map() kepada nombor kuasa dua dalam senarai:
numbers = [1, 2, 3, 4, 5] squares = list(map(lambda x: x ** 2, numbers)) print(squares) # Output: [1, 4, 9, 16, 25]
Fungsi penapis() mencipta senarai elemen yang mana fungsi mengembalikan benar. Begini cara menggunakan fungsi lambda untuk menapis nombor genap daripada senarai:
numbers = [1, 2, 3, 4, 5, 6] odd_numbers = list(filter(lambda x: x % 2 != 0, numbers)) print(odd_numbers) # Output: [1, 3, 5]
Anda boleh menggunakan fungsi lambda untuk menyesuaikan pengisihan senarai. Contohnya, untuk mengisih senarai tupel berdasarkan elemen kedua, anda boleh melakukan perkara berikut:
data = [(1, 'one'), (3, 'three'), (2, 'two')] sorted_data = sorted(data, key=lambda x: x[1]) print(sorted_data) # Output: [(1, 'one'), (3, 'three'), (2, 'two')]
Fungsi tertib tinggi ialah fungsi yang boleh mengambil fungsi lain sebagai hujah. Berikut ialah contoh yang menunjukkan perkara ini:
def apply_function(f, x): return f(x) result = apply_function(lambda x: x * 2, 10) print(result) # Output: 20
Fungsi Lambda juga boleh termasuk logik bersyarat. Begini cara untuk menentukan fungsi lambda yang mengembalikan maksimum dua nilai:
max_value = lambda a, b: a if a > b else b print(max_value(10, 20)) # Output: 20
Fungsi Python lambda ialah alat yang berkuasa untuk menulis kod ringkas dan ekspresif. Ia membolehkan pembangun mencipta fungsi kecil dan buang yang boleh digunakan dalam pelbagai konteks tanpa overhed definisi fungsi penuh. Walaupun fungsi lambda bukanlah pengganti untuk fungsi biasa, ia amat berharga untuk situasi di mana kesederhanaan dan kepekatan diperlukan.
Dengan menyepadukan fungsi lambda ke dalam kod anda, anda boleh meningkatkan kebolehbacaan dan menjadikan usaha pengaturcaraan berfungsi anda dalam Python lebih cekap. Sama ada anda menggunakannya dengan map(), penapis(), atau fungsi tersuai lebih tinggi, fungsi lambda ialah bahagian penting dalam kit alat serba boleh Python.
Atas ialah kandungan terperinci Memahami Fungsi Python Lambda: Panduan Komprehensif. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!