


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!

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

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas



MySQL mempunyai versi komuniti percuma dan versi perusahaan berbayar. Versi komuniti boleh digunakan dan diubahsuai secara percuma, tetapi sokongannya terhad dan sesuai untuk aplikasi dengan keperluan kestabilan yang rendah dan keupayaan teknikal yang kuat. Edisi Enterprise menyediakan sokongan komersil yang komprehensif untuk aplikasi yang memerlukan pangkalan data yang stabil, boleh dipercayai, berprestasi tinggi dan bersedia membayar sokongan. Faktor yang dipertimbangkan apabila memilih versi termasuk kritikal aplikasi, belanjawan, dan kemahiran teknikal. Tidak ada pilihan yang sempurna, hanya pilihan yang paling sesuai, dan anda perlu memilih dengan teliti mengikut keadaan tertentu.

Artikel ini memperkenalkan operasi pangkalan data MySQL. Pertama, anda perlu memasang klien MySQL, seperti MySqlworkbench atau Command Line Client. 1. Gunakan perintah MySQL-Uroot-P untuk menyambung ke pelayan dan log masuk dengan kata laluan akaun root; 2. Gunakan CreateTatabase untuk membuat pangkalan data, dan gunakan Pilih pangkalan data; 3. Gunakan createtable untuk membuat jadual, menentukan medan dan jenis data; 4. Gunakan InsertInto untuk memasukkan data, data pertanyaan, kemas kini data dengan kemas kini, dan padam data dengan padam. Hanya dengan menguasai langkah -langkah ini, belajar menangani masalah biasa dan mengoptimumkan prestasi pangkalan data anda boleh menggunakan MySQL dengan cekap.

Sebab utama kegagalan pemasangan MySQL adalah: 1. Isu kebenaran, anda perlu menjalankan sebagai pentadbir atau menggunakan perintah sudo; 2. Ketergantungan hilang, dan anda perlu memasang pakej pembangunan yang relevan; 3. Konflik pelabuhan, anda perlu menutup program yang menduduki port 3306 atau mengubah suai fail konfigurasi; 4. Pakej pemasangan adalah korup, anda perlu memuat turun dan mengesahkan integriti; 5. Pembolehubah persekitaran dikonfigurasikan dengan salah, dan pembolehubah persekitaran mesti dikonfigurasi dengan betul mengikut sistem operasi. Selesaikan masalah ini dan periksa dengan teliti setiap langkah untuk berjaya memasang MySQL.

Fail muat turun mysql adalah korup, apa yang perlu saya lakukan? Malangnya, jika anda memuat turun MySQL, anda boleh menghadapi rasuah fail. Ia benar -benar tidak mudah hari ini! Artikel ini akan bercakap tentang cara menyelesaikan masalah ini supaya semua orang dapat mengelakkan lencongan. Selepas membacanya, anda bukan sahaja boleh membaiki pakej pemasangan MySQL yang rosak, tetapi juga mempunyai pemahaman yang lebih mendalam tentang proses muat turun dan pemasangan untuk mengelakkan terjebak pada masa akan datang. Mari kita bercakap tentang mengapa memuat turun fail rosak. Terdapat banyak sebab untuk ini. Masalah rangkaian adalah pelakunya. Gangguan dalam proses muat turun dan ketidakstabilan dalam rangkaian boleh menyebabkan rasuah fail. Terdapat juga masalah dengan sumber muat turun itu sendiri. Fail pelayan itu sendiri rosak, dan sudah tentu ia juga dipecahkan jika anda memuat turunnya. Di samping itu, pengimbasan "ghairah" yang berlebihan beberapa perisian antivirus juga boleh menyebabkan rasuah fail. Masalah Diagnostik: Tentukan sama ada fail itu benar -benar korup

Panduan Pengoptimuman Prestasi Pangkalan Data MySQL Dalam aplikasi yang berintensifkan sumber, pangkalan data MySQL memainkan peranan penting dan bertanggungjawab untuk menguruskan urus niaga besar-besaran. Walau bagaimanapun, apabila skala aplikasi berkembang, kemunculan prestasi pangkalan data sering menjadi kekangan. Artikel ini akan meneroka satu siri strategi pengoptimuman prestasi MySQL yang berkesan untuk memastikan aplikasi anda tetap cekap dan responsif di bawah beban tinggi. Kami akan menggabungkan kes-kes sebenar untuk menerangkan teknologi utama yang mendalam seperti pengindeksan, pengoptimuman pertanyaan, reka bentuk pangkalan data dan caching. 1. Reka bentuk seni bina pangkalan data dan seni bina pangkalan data yang dioptimumkan adalah asas pengoptimuman prestasi MySQL. Berikut adalah beberapa prinsip teras: Memilih jenis data yang betul dan memilih jenis data terkecil yang memenuhi keperluan bukan sahaja dapat menjimatkan ruang penyimpanan, tetapi juga meningkatkan kelajuan pemprosesan data.

Pengoptimuman prestasi MySQL perlu bermula dari tiga aspek: konfigurasi pemasangan, pengindeksan dan pengoptimuman pertanyaan, pemantauan dan penalaan. 1. Selepas pemasangan, anda perlu menyesuaikan fail my.cnf mengikut konfigurasi pelayan, seperti parameter innodb_buffer_pool_size, dan tutup query_cache_size; 2. Buat indeks yang sesuai untuk mengelakkan indeks yang berlebihan, dan mengoptimumkan pernyataan pertanyaan, seperti menggunakan perintah menjelaskan untuk menganalisis pelan pelaksanaan; 3. Gunakan alat pemantauan MySQL sendiri (ShowProcessList, ShowStatus) untuk memantau kesihatan pangkalan data, dan kerap membuat semula dan mengatur pangkalan data. Hanya dengan terus mengoptimumkan langkah -langkah ini, prestasi pangkalan data MySQL diperbaiki.

MySQL boleh berjalan tanpa sambungan rangkaian untuk penyimpanan dan pengurusan data asas. Walau bagaimanapun, sambungan rangkaian diperlukan untuk interaksi dengan sistem lain, akses jauh, atau menggunakan ciri -ciri canggih seperti replikasi dan clustering. Di samping itu, langkah -langkah keselamatan (seperti firewall), pengoptimuman prestasi (pilih sambungan rangkaian yang betul), dan sandaran data adalah penting untuk menyambung ke Internet.

Tidak mustahil untuk melihat kata laluan MongoDB secara langsung melalui Navicat kerana ia disimpan sebagai nilai hash. Cara mendapatkan kata laluan yang hilang: 1. Tetapkan semula kata laluan; 2. Periksa fail konfigurasi (mungkin mengandungi nilai hash); 3. Semak Kod (boleh kata laluan Hardcode).
