⊗pyPmFnLa 16 of 129 menu

Fungsi Lambda di Python

Misalkan kita memiliki fungsi func, yang parameternya menerima sebuah list dan sebuah callback. Fungsi ini akan membuat list baru dari elemen list asli. Pada setiap elemen akan diterapkan callback-nya:

def func(lst, callback): res = [] for el in lst: res.append(callback(el)) return res

Sekarang mari buat fungsi square, yang akan memangkatkan angka yang diberikan padanya menjadi kuadrat:

def square(num): return num ** 2

Mari kita berikan parameter func sebuah list angka dan fungsi square sebagai callback:

print( func([1, 2, 3], square) )

Di konsol akan ditampilkan list baru, yang terdiri dari kuadrat angka-angka tersebut:

[1, 4, 9]

Namun, kode ini dapat disingkat secara signifikan dengan menggunakan fungsi lambda - fungsi anonim, yang dipanggil dengan kata kunci lambda dan ditulis dalam satu baris. Oleh karena itu, ke dalam fungsi lambda hanya dapat ditulis ulang fungsi-fungsi yang kodenya hanya membutuhkan satu baris.

Sintaks fungsi lambda terlihat seperti ini:

lambda parameter fungsi: operasi dengan parameter fungsi

Mari kita tulis ulang fungsi square menggunakan fungsi lambda dan berikan ke parameter func:

print( func([1, 2, 3], lambda num: num ** 2) )

Fungsi lambda dapat ditulis ke dalam variabel:

square = lambda num: num ** 2 print( func([1, 2, 3], square) )

Tulis ulang kode berikut melalui fungsi lambda:

def func(num, clb): return clb(num) def clb(num): return num + 1 print( func(2, clb) )

Tulis ulang kode berikut melalui fungsi lambda:

def func(num, clb1, clb2): return (clb1(num), clb2(num)) def clb1(num): return num + 1 def clb2(num): return num - 1 print( func(2, clb1, clb2) )

Tulis ulang kode berikut melalui fungsi lambda:

def func(num1, num2, clb): res = clb(num1) + num2 return res def clb(num): return num ** 3 print(func(2, 6, clb))
Indonesia
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Kami menggunakan cookie untuk operasi situs, analitik, dan personalisasi. Pemrosesan data dilakukan sesuai dengan Kebijakan Privasi.
terima semua atur tolak