


Apakah fungsi lambda dalam Python dan mengapa kita memerlukannya?
Dalam artikel ini, kita akan belajar tentang fungsi lambda dalam Python dan sebab kita memerlukannya, dan melihat beberapa contoh praktikal fungsi lambda.
Apakah fungsi lambda dalam Python?
Fungsi Lambda, sering dipanggil "fungsi tanpa nama", sama seperti fungsi Python biasa, kecuali ia boleh ditakrifkan tanpa nama. Kata kunci >def digunakan untuk mentakrifkan fungsi biasa, manakala kata kunci lambda digunakan untuk mentakrifkan fungsi tanpa nama. Walau bagaimanapun, ia terhad kepada ungkapan satu baris. Mereka, seperti fungsi biasa, boleh menerima berbilang hujah.
Tatabahasa
lambda arguments: expression
Fungsi ini menerima sebarang bilangan input tetapi hanya menilai dan mengembalikan ungkapan.
Fungsi Lambda boleh digunakan di mana-mana objek fungsi diperlukan.
Anda mesti ingat bahawa fungsi lambda terhad secara sintaksis kepada satu ungkapan.
Selain jenis ekspresi lain dalam fungsi, ia mempunyai pelbagai kegunaan dalam kawasan pengaturcaraan tertentu.
Mengapa kita memerlukan fungsi Lambda?
Fungsi lambda memerlukan lebih sedikit baris kod daripada fungsi Python biasa yang ditulis menggunakan kata kunci def. Walau bagaimanapun, ini tidak sepenuhnya benar, kerana fungsi yang ditakrifkan menggunakan def boleh ditakrifkan dalam satu baris. Walau bagaimanapun, fungsi def biasanya ditakrifkan pada lebih daripada satu baris.
Ia biasanya digunakan apabila fungsi yang lebih pendek (sementara) diperlukan, biasanya dalam fungsi lain (seperti penapis, peta atau pengurangan).
Anda boleh mentakrifkan fungsi dan memanggilnya serta-merta pada penghujung definisi menggunakan fungsi lambda. Ini tidak boleh dilakukan dengan fungsi def.
Contoh mudah fungsi Python Lambda
Contoh
# input string inputString = 'TUTORIALSpoint' # converting the given input string to lowercase and reversing it # with the lambda function reverse_lower = lambda inputString: inputString.lower()[::-1] print(reverse_lower(inputString))
Output
Apabila dilaksanakan, program di atas akan menjana output berikut -
tniopslairotut
Gunakan fungsi Lambda dalam semakan bersyarat
Contoh
# Formatting number to 2 decimal places using lambda function formatNum = lambda n: f"{n:e}" if isinstance(n, int) else f"{n:,.2f}" print("Int formatting:", formatNum(1000)) print("float formatting:", formatNum(5555.4895412))
Output
Apabila dilaksanakan, program di atas akan menjana output berikut -
Int formatting: 1.000000e+03 float formatting: 5,555.49
Apakah perbezaan antara fungsi Lambda dan fungsi yang ditakrifkan?
Contoh
# creating a function that returns the square root of # the number passed to it def square(x): return x*x # using lambda function that returns the square root of # the number passed lambda_square = lambda x: x*x # printing the square root of the number by passing the # random number to the above-defined square function with the def keyword print("Square of the number using the function with 'def' keyword:", square(4)) # printing the square root of the number by passing the # random number to the above lambda_square function with lambda keyword print("Square of the number using the function with 'lambda' keyword:", lambda_square(4))
Output
Apabila dilaksanakan, program di atas akan menjana output berikut -
Square of the number using the function with 'def' keyword: 16 Square of the number using the function with 'lambda' keyword: 16
Seperti yang ditunjukkan dalam contoh sebelumnya, fungsi square() dan lambda_square () berfungsi sama dan seperti yang dijangkakan. Mari kita lihat lebih dekat contoh ini dan ketahui perbezaan antara mereka -
Gunakan fungsi lambda | Tiada fungsi lambda |
---|---|
Menyokong pernyataan satu baris yang mengembalikan nilai tertentu. | Membenarkan sebarang bilangan baris dalam blok fungsi. |
Sesuai untuk operasi kecil atau manipulasi data. | Ini berguna dalam situasi di mana berbilang baris kod diperlukan. |
Kurangkan kebolehbacaan kod | Kami boleh meningkatkan kebolehbacaan dengan menggunakan ulasan dan penjelasan berfungsi. |
Penggunaan praktikal fungsi Python lambda
Contoh
Gunakan fungsi Lambda dengan pemahaman senarai
is_odd_list = [lambda arg=y: arg * 5 for y in range(1, 10)] # looping on each lambda function and calling the function # for getting the multiplied value for i in is_odd_list: print(i())
Output
Apabila dilaksanakan, program di atas akan menjana output berikut -
5 10 15 20 25 30 35 40 45
Pada setiap lelaran pemahaman senarai, fungsi lambda baharu dicipta dengan parameter lalai y (dengan y ialah item semasa dalam lelaran). Kemudian, dalam gelung for, kami menggunakan i() untuk memanggil objek fungsi yang sama dengan parameter lalai dan mendapatkan nilai yang diperlukan. Oleh itu, is_odd_list memegang senarai objek fungsi lambda.
Contoh
Gunakan fungsi Lambda dengan syarat if-else
# using lambda function to find the maximum number among both the numbers find_maximum = lambda x, y : x if(x > y) else y print(find_maximum(6, 3))
Output
Apabila dilaksanakan, program di atas akan menjana output berikut -
6
Contoh
Gunakan fungsi Lambda dengan berbilang kenyataan
inputList = [[5,2,8],[2, 9, 12],[10, 4, 2, 7]] # sorting the given each sublist using lambda function sorted_list = lambda k: (sorted(e) for e in k) # getting the second-largest element second_largest = lambda k, p : [x[len(x)-2] for x in p(k)] output = second_largest(inputList, sorted_list) # printing the second largest element print(output)
Output
Apabila dilaksanakan, program di atas akan menjana output berikut -
[5, 9, 7]
Fungsi python lambda dengan penapis()
Contoh
inputList = [3, 5, 10, 7, 24, 6, 1, 12, 8, 4] # getting the even numbers from the input list # using lambda and filter functions evenList = list(filter(lambda n: (n % 2 == 0), inputList)) # priting the even numbers from the input list print("Even numbers from the input list:", evenList)
Output
Apabila dilaksanakan, program di atas akan menjana output berikut -
Even numbers from the input list: [10, 24, 6, 12, 8, 4]
Fungsi python lambda dengan map()
FungsiPython's map() menerima fungsi dan senarai sebagai parameter. Memanggil fungsi dengan fungsi lambda dan senarai, ia mengembalikan senarai baharu yang mengandungi semua item yang diubah lambda yang dipulangkan oleh fungsi untuk setiap item.
Contoh
Tukar semua elemen senarai kepada huruf kecil menggunakan fungsi lambda dan map()
# input list inputList = ['HELLO', 'TUTORIALSpoint', 'PyTHoN', 'codeS'] # converting all the input list elements to lowercase using lower() # with the lambda() and map() functions and returning the result list lowercaseList = list(map(lambda animal: animal.lower(), inputList)) # printing the resultant list print("Converting all the input list elements to lowercase:\n", lowercaseList)
Output
Apabila dilaksanakan, program di atas akan menjana output berikut -
Converting all the input list elements to lowercase: ['hello', 'tutorialspoint', 'python', 'codes']
Kesimpulan
Dalam tutorial ini, kami belajar tentang fungsi lambda dalam Python secara mendalam dengan banyak contoh. Kami juga mempelajari perbezaan antara fungsi lambda dan fungsi def.
Atas ialah kandungan terperinci Apakah fungsi lambda dalam Python dan mengapa kita memerlukannya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Untuk memaksimumkan kecekapan pembelajaran Python dalam masa yang terhad, anda boleh menggunakan modul, masa, dan modul Python. 1. Modul DateTime digunakan untuk merakam dan merancang masa pembelajaran. 2. Modul Masa membantu menetapkan kajian dan masa rehat. 3. Modul Jadual secara automatik mengatur tugas pembelajaran mingguan.

Python cemerlang dalam permainan dan pembangunan GUI. 1) Pembangunan permainan menggunakan pygame, menyediakan lukisan, audio dan fungsi lain, yang sesuai untuk membuat permainan 2D. 2) Pembangunan GUI boleh memilih tkinter atau pyqt. TKInter adalah mudah dan mudah digunakan, PYQT mempunyai fungsi yang kaya dan sesuai untuk pembangunan profesional.

Python sesuai untuk sains data, pembangunan web dan tugas automasi, manakala C sesuai untuk pengaturcaraan sistem, pembangunan permainan dan sistem tertanam. Python terkenal dengan kesederhanaan dan ekosistem yang kuat, manakala C dikenali dengan keupayaan kawalan dan keupayaan kawalan yang mendasari.

Anda boleh mempelajari konsep pengaturcaraan asas dan kemahiran Python dalam masa 2 jam. 1. Belajar Pembolehubah dan Jenis Data, 2.

Python digunakan secara meluas dalam bidang pembangunan web, sains data, pembelajaran mesin, automasi dan skrip. 1) Dalam pembangunan web, kerangka Django dan Flask memudahkan proses pembangunan. 2) Dalam bidang sains data dan pembelajaran mesin, numpy, panda, scikit-learn dan perpustakaan tensorflow memberikan sokongan yang kuat. 3) Dari segi automasi dan skrip, Python sesuai untuk tugas -tugas seperti ujian automatik dan pengurusan sistem.

Anda boleh mempelajari asas -asas Python dalam masa dua jam. 1. Belajar pembolehubah dan jenis data, 2. Struktur kawalan induk seperti jika pernyataan dan gelung, 3 memahami definisi dan penggunaan fungsi. Ini akan membantu anda mula menulis program python mudah.

Bagaimana Mengajar Asas Pengaturcaraan Pemula Komputer Dalam masa 10 jam? Sekiranya anda hanya mempunyai 10 jam untuk mengajar pemula komputer beberapa pengetahuan pengaturcaraan, apa yang akan anda pilih untuk mengajar ...

Cara mengelakkan dikesan semasa menggunakan fiddlerevery di mana untuk bacaan lelaki-dalam-pertengahan apabila anda menggunakan fiddlerevery di mana ...


Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

DVWA
Damn Vulnerable Web App (DVWA) ialah aplikasi web PHP/MySQL yang sangat terdedah. Matlamat utamanya adalah untuk menjadi bantuan bagi profesional keselamatan untuk menguji kemahiran dan alatan mereka dalam persekitaran undang-undang, untuk membantu pembangun web lebih memahami proses mengamankan aplikasi web, dan untuk membantu guru/pelajar mengajar/belajar dalam persekitaran bilik darjah Aplikasi web keselamatan. Matlamat DVWA adalah untuk mempraktikkan beberapa kelemahan web yang paling biasa melalui antara muka yang mudah dan mudah, dengan pelbagai tahap kesukaran. Sila ambil perhatian bahawa perisian ini

EditPlus versi Cina retak
Saiz kecil, penyerlahan sintaks, tidak menyokong fungsi gesaan kod

Dreamweaver CS6
Alat pembangunan web visual

MantisBT
Mantis ialah alat pengesan kecacatan berasaskan web yang mudah digunakan yang direka untuk membantu dalam pengesanan kecacatan produk. Ia memerlukan PHP, MySQL dan pelayan web. Lihat perkhidmatan demo dan pengehosan kami.

Pelayar Peperiksaan Selamat
Pelayar Peperiksaan Selamat ialah persekitaran pelayar selamat untuk mengambil peperiksaan dalam talian dengan selamat. Perisian ini menukar mana-mana komputer menjadi stesen kerja yang selamat. Ia mengawal akses kepada mana-mana utiliti dan menghalang pelajar daripada menggunakan sumber yang tidak dibenarkan.