Panduan untuk Fungsi Python dan Lambdas - Analytics Vidhya
Python: Menguasai Fungsi dan Fungsi Lambda untuk Kod yang Cekap dan Boleh Dibaca
Kami telah meneroka kepelbagaian Python; Sekarang mari kita menyelidiki keupayaannya untuk meningkatkan kecekapan kod dan kebolehbacaan. Mengekalkan modulariti kod dalam program peringkat pengeluaran adalah penting. Definisi fungsi Python dan fungsi Lambda membantu mencapai ini dengan merangkumi logik kod. Panduan ini meneroka sintaks, penggunaan, dan amalan terbaik kedua -duanya, membina asas yang kukuh untuk projek Python anda.
Jadual Kandungan:
- Pengenalan
- Memahami fungsi
- Prinsip Teras: Abstraksi dan Penguraian
- Penciptaan fungsi dan sintaks
- Mengakses dokumentasi fungsi
- Meneroka Jenis Argumen di Python
- Argumen lalai
- Hujah -hujah posisional
- Hujah kata kunci
- Argumen panjang berubah-ubah (*args dan ** kwargs)
- Mengkategorikan fungsi python
- Fungsi sebagai warganegara kelas pertama
- Memeriksa
type()
danid()
fungsi - Fungsi penugasan semula
- Fungsi dalam struktur data
- Ketidakhadiran fungsi
- Fungsi sebagai argumen dan nilai pulangan
- Memeriksa
- Pengenalan kepada fungsi Lambda
- Fungsi Lambda Variable Single
- Fungsi Lambda Multi-Variable
- Lambda berfungsi dengan logik bersyarat (
if-else
)
- Fungsi Lambda vs Fungsi Biasa
- Kes penggunaan optimum untuk fungsi lambda
- Fungsi pesanan tinggi (HOFS) di Python
- Tiga HOFS utama:
map()
,filter()
, danreduce()
- fungsi
map()
dijelaskan - Fungsi
filter()
dijelaskan -
reduce()
fungsi dijelaskan
- fungsi
- Kesimpulan
- Soalan yang sering ditanya
Memahami fungsi
Fungsi Python adalah blok kod yang boleh diguna semula yang melaksanakan tugas tertentu. Mereka menerima input (parameter atau argumen), memprosesnya, dan boleh mengembalikan output. Fungsi adalah penting untuk menganjurkan kod, meningkatkan kebolehbacaan, penyelenggaraan, dan kecekapan.
Prinsip Teras:
- Abstraksi: Menyembunyikan butiran pelaksanaan yang kompleks, hanya mendedahkan ciri -ciri penting (output).
- Penguraian: Memecah tugas besar ke dalam fungsi yang lebih kecil, terkawal, mengurangkan redundansi dan memudahkan debugging.
Penciptaan fungsi dan sintaks:
Perisytiharan fungsi menggunakan kata kunci def
:
def function_name (parameter): "" "Docstring menggambarkan fungsi itu." "" # Logik fungsi output pulangan
Fungsi panggilan:
fungsi_name (argumen)
Contoh:
def is_even (num: int): "" "Pemeriksaan jika nombor adalah atau ganjil." "" jika jenis (num) == int: kembali "walaupun" jika num % 2 == 0 else "ganjil" lain: kembali "memerlukan hujah integer" untuk saya dalam julat (1, 11): cetak (i, "is", is_even (i))
Mengakses Dokumentasi Fungsi:
Gunakan .__doc__
untuk mengakses docstring:
cetak (is_even .__ doc__)
Parameter vs Argumen:
- Parameter: Pembolehubah dalam definisi fungsi.
- Argumen: Nilai sebenar yang diluluskan semasa panggilan fungsi.
Meneroka Jenis Argumen di Python
Fungsi Python menyokong pelbagai jenis argumen:
- Argumen lalai: Anggapkan nilai lalai jika tidak disediakan semasa panggilan.
- Argumen Posisi: Diluluskan dalam urutan tertentu.
- Argumen Kata Kunci: Lulus menggunakan nama parameter (pesanan tidak penting).
- * Argumen panjang berubah-ubah ( ARGS, KWARGS): Benarkan menerima bilangan pembolehubah argumen kedudukan atau kata kunci.
Mengkategorikan fungsi python
Python menawarkan beberapa jenis fungsi:
- Fungsi terbina dalam
- Fungsi yang ditentukan oleh pengguna
- Fungsi Lambda
- Fungsi rekursif
- Fungsi pesanan lebih tinggi
- Fungsi penjana
Fungsi sebagai warganegara kelas pertama
Fungsi Python adalah warga kelas pertama, yang bermaksud mereka boleh:
- Diberikan kepada pembolehubah.
- Diluluskan sebagai hujah kepada fungsi lain.
- Kembali dari fungsi lain.
- Disimpan dalam struktur data.
Ini membolehkan pengaturcaraan yang kuat dan dinamik.
Pengenalan kepada fungsi Lambda
Fungsi Lambda adalah fungsi kecil, tanpa nama yang ditakrifkan menggunakan kata kunci lambda
. Mereka mempunyai satu ungkapan dan sering digunakan dengan HOFS.
Fungsi Lambda vs Fungsi Biasa
Ciri | Fungsi Lambda | Fungsi normal |
---|---|---|
Definisi | Kata kunci lambda
|
kata kunci def
|
Nama | Tanpa nama | Dinamakan |
Gunakan kes | Pendek, fungsi mudah | Fungsi kompleks |
Penyataan pulangan | Tersirat (ungkapan tunggal) | Eksplisit |
Kebolehbacaan | Kurang boleh dibaca untuk logik kompleks | Lebih mudah dibaca |
Penghias | Tidak boleh dihiasi | Boleh dihiasi |
Docstrings | Tidak boleh mengandungi docstrings | Boleh mengandungi docstrings |
Fungsi pesanan tinggi (HOFS) di Python
HOFS menerima fungsi sebagai hujah, fungsi kembali, atau kedua -duanya.
Tiga HOFS utama:
-
map()
: Memohon fungsi untuk setiap item yang boleh diperolehi. -
filter()
: Penapis elemen berdasarkan nilai pulangan fungsi. -
reduce()
: Menggunakan fungsi secara kumulatif untuk mengurangkan satu nilai kepada satu nilai.
Kesimpulan
Menguasai fungsi dan fungsi Lambda adalah penting untuk menulis kod python yang cekap, berskala, dan boleh dibaca. Mereka meningkatkan organisasi kod, kebolehgunaan, dan kerjasama.
Soalan yang sering ditanya
- S1: Apakah definisi fungsi dalam python? A: Definisi fungsi membuat blok kod yang boleh diguna semula, mempromosikan modulariti dan kebolehbacaan.
- S2: Apakah fungsi Lambda di Python? A: Fungsi Lambda adalah ringkas, fungsi tanpa nama sesuai untuk operasi pendek dan mudah.
- S3: Apakah perbezaan antara
map()
,filter()
, danreduce()
? A:map()
menggunakan fungsi untuk setiap item;filter()
memilih item berdasarkan keadaan;reduce()
secara kumulatif menggunakan fungsi untuk mengurangkan kepada satu nilai.
Sambutan yang disemak ini mengekalkan makna asal semasa menggunakan struktur kata -kata dan struktur yang berlainan, dengan itu mencapai paraphrasing. Imej kekal dalam format dan lokasi asalnya.
Atas ialah kandungan terperinci Panduan untuk Fungsi Python dan Lambdas - Analytics Vidhya. 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

Video Face Swap
Tukar muka dalam mana-mana video dengan mudah menggunakan alat tukar muka AI percuma kami!

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

Artikel ini mengkaji semula penjana seni AI atas, membincangkan ciri -ciri mereka, kesesuaian untuk projek kreatif, dan nilai. Ia menyerlahkan Midjourney sebagai nilai terbaik untuk profesional dan mengesyorkan Dall-E 2 untuk seni berkualiti tinggi dan disesuaikan.

Meta's Llama 3.2: Lompat ke hadapan dalam Multimodal dan Mobile AI META baru -baru ini melancarkan Llama 3.2, kemajuan yang ketara dalam AI yang memaparkan keupayaan penglihatan yang kuat dan model teks ringan yang dioptimumkan untuk peranti mudah alih. Membina kejayaan o

Artikel ini membandingkan chatbots AI seperti Chatgpt, Gemini, dan Claude, yang memberi tumpuan kepada ciri -ciri unik mereka, pilihan penyesuaian, dan prestasi dalam pemprosesan bahasa semula jadi dan kebolehpercayaan.

Artikel ini membincangkan pembantu penulisan AI terkemuka seperti Grammarly, Jasper, Copy.ai, WriteSonic, dan Rytr, yang memberi tumpuan kepada ciri -ciri unik mereka untuk penciptaan kandungan. Ia berpendapat bahawa Jasper cemerlang dalam pengoptimuman SEO, sementara alat AI membantu mengekalkan nada terdiri

Landskap AI minggu ini: Badai kemajuan, pertimbangan etika, dan perdebatan pengawalseliaan. Pemain utama seperti Openai, Google, Meta, dan Microsoft telah melepaskan kemas kini, dari model baru yang terobosan ke peralihan penting di LE

Memo CEO Shopify Tobi Lütke baru -baru ini dengan berani mengisytiharkan penguasaan AI sebagai harapan asas bagi setiap pekerja, menandakan peralihan budaya yang signifikan dalam syarikat. Ini bukan trend seketika; Ini adalah paradigma operasi baru yang disatukan ke p

Hei ada, pengekodan ninja! Apa tugas yang berkaitan dengan pengekodan yang anda telah merancang untuk hari itu? Sebelum anda menyelam lebih jauh ke dalam blog ini, saya ingin anda memikirkan semua kesengsaraan yang berkaitan dengan pengekodan anda-lebih jauh menyenaraikan mereka. Selesai? - Let ’

Artikel ini mengulas penjana suara AI atas seperti Google Cloud, Amazon Polly, Microsoft Azure, IBM Watson, dan Descript, memberi tumpuan kepada ciri -ciri mereka, kualiti suara, dan kesesuaian untuk keperluan yang berbeza.
