Cara menggunakan python map example

Pada tutorial sebelumnya, kita pernah belajar membuat fungsi di Python dengan lambda x,y : x**2 + y**21. Kali ini kita akan membahas cara membuat fungsi dengan lambda expression.

Membuat fungsi dengan lambda expression, berbeda dengan lambda x,y : x**2 + y**21. Bahkan, lambda expression memiliki kelebihan yang tidak dimiliki lambda x,y : x**2 + y**21.

Nah di tutorial ini, kita akan membahas konsep dasar lambda di python dilengkapi dengan contohnya.

Harapannya, nanti kamu akan bisa paham cara membuat fungsi dengan lambda expression serta dapat menggunakannya dalam program.

Baiklah, mari kita mulai…

Apa itu Lambda Expression?

Lambda expression di Python adalah sebuah ekspresi untuk membuat fungsi.

Lambda sendiri berasal dari teori kalkulus, yakni Lambda Calculusyang dikenalkan oleh Alonzo Church di tahun 1930.

Berkat lambda, kita bisa membuat fungsi tanpa nama atau dikenal juga dengan anonymous function.

Misalkan kita punya fungsi penjumlahan kuadrat seperti ini:

def suqare_sum(x,y): return x**2 + y**2

Nah, dengan lambda.. kita tidak perlu menggunakan lambda x,y : x**2 + y**21 dan lambda x,y : x**2 + y**25, bahkan kita juga tidak perlu menuliskan namanya.

lambda x,y : x**2 + y**2

Lah! terus nanti bagiaman cara memanggilnya?

Kan gak punya nama 🤔?

Mari kita bahas dulu…

Cara Menggunakan Lambda Expression

Nah sudah tahu kan apa itu Lambda?

Intinya, lambda digunakan untuk membuat fungsi dalam satu baris ekspresi.

Ini adalah format untuk membuat fungsi lambda:

Lambda bisa memiliki lebih dari satu argumen atau parameter, tapi hanya bisa memiliki satu ekspresi atau isi.

Contoh:

greeting = lambda name: print(f"Hello, {name}")

Karena fungsi lambda tidak punya nama, jadi kita butuh variabel untuk menyimpannya.

Nanti saat kita mau panggil, kita tinggal tuliskan saja nama variabelnya seperti ini:

greeting("Petani Kode") greeting("Dian") greeting("Ayu")

Mari kita coba…

Wah! bukannya ini sama saja seperti kita membuat fungsi dengan lambda x,y : x**2 + y**21 🤔?

Iya memang sama..

Tapi bedanya, lambda khusus untuk fungsi yang berisi satu ekspresi dan sifat fungsinya akan anonymous.

Kamu pernah dengar tentang "anonymous function"? pic.twitter.com/XZ7kl3aHem

— Petani Kode (@petanikode) December 18, 2019

Anonymous Function di Python

Karena lambda adalah anonymous function, ia akan bebas menggunakan nama apa saja.

Dengan kata lain, fungsi lambda bisa disimpan di variabel mana pun.

Ini tentunya tidak bisa dilakukan oleh fungsi yang dibuat dengan lambda x,y : x**2 + y**21.

Coba perhatikan ini:

Saya mencoba membuat fungsi lambda x,y : x**2 + y**28 dengan lambda x,y : x**2 + y**21, kemudian menyimpannya ke dalam variabel greeting = lambda name: print(f"Hello, {name}") 0.

Tapi malah error!

Ini karena fungsi tersebut bukanlah fungsi anonymous yang boleh dibah-ubah namanya.

Lalu coba perhatikan di baris terakhir, fungsi lambda greeting = lambda name: print(f"Hello, {name}") 1 yang sudah dibuat disimpan lagi ke variabel yang berbeda, yakni greeting = lambda name: print(f"Hello, {name}") 2.

greeting = lambda name: print(f"Hello, {name}") sapa = greeting greeting("Andi") sapa("Neli")

Hasilnya nggak akan error, karena ini adalah fungsi anonymous atau lambda.

Eksekusi Lambda Secara Langsung

Kelebihan fungsi lambda dibandingkan lambda x,y : x**2 + y**21 adalah bisa kita eksekusi langsung.

Maksudnya?

Ya bisa kita pakai langsung, tanpa harus memanggil namanya.

Contohnya:

(lambda x,y: x**2 + y**2)(4,6)

Tanda kurung yang mengapit fungsi lambda artinya kita akan langsung mengeksekusi fungsi tersebut.

Lalu kurung berikutnya akan berisi parameter.

Angka greeting = lambda name: print(f"Hello, {name}") 4 dan greeting = lambda name: print(f"Hello, {name}") 5 adalah parameter greeting = lambda name: print(f"Hello, {name}") 6 dan greeting = lambda name: print(f"Hello, {name}") 7 yang akan diberikan kepada fungsi lambda.

Mak akita akan langsung mendapatkan hasilnya, yakni: greeting = lambda name: print(f"Hello, {name}") 8 + greeting = lambda name: print(f"Hello, {name}") 9 = greeting("Petani Kode") greeting("Dian") greeting("Ayu")0.

Hasil dari eksekusi ini bisa juga kita simpan ke dalam variabel.

hasil = (lambda x,y: x**2 + y**2)(4,6)

Mengapa Harus Pakai Lambda?

Kita memang tidak harus selalu menggunakan Lambda, tapi dalam kasus tertentu lambda lebih baik dibandingkan fungsi biasa.

Lambda biasanya dibutuhkan saat kita ingin membuat fungsi dalam satu baris.

Biasanya saat menggunakan fungsi-fungsi seperti greeting("Petani Kode") greeting("Dian") greeting("Ayu")1, greeting("Petani Kode") greeting("Dian") greeting("Ayu")2, dan greeting("Petani Kode") greeting("Dian") greeting("Ayu")3 kita akan membutuhkan lambda.

Postingan terbaru

LIHAT SEMUA