⊗pyPmFnLa 16 of 129 menu

Kazi ya Lambda katika Python

Hebu tuwe na kazi func, ambayo inakubali orodha na kiwito kama vigezo. Kazi itaunda orodha mpya kutoka kwa vipengele vya orodha asili. Wakati huo huo, kiwito kitatumika kwa kila kipengele:

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

Sasa tuunde kazi square, ambayo itainua nambari iliyopitishwa kiwango cha pili:

def square(num): return num ** 2

Wacha tuipitishe kwenye vigezo vya func orodha ya nambari na kazi square kama kiwito:

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

Kwenye konsoli orodha mpya itaonyeshwa, inayojumuisha vigawo vya nambari:

[1, 4, 9]

Hata hivyo, msimbo huu unaweza kufupishwa sana kwa kutumia kazi ya lambda - kazi isiyojulikana, ambayo inaitwa kwa msaada wa neno kuu lambda na kuandikwa kwenye mstari mmoja. Kwa hivyo kwenye kazi ya lambda inaweza kubadilishwa tu kazi, msimbo ambao unachukua mstari mmoja.

Sintaksia ya kazi ya lambda inaonekana hivi:

lambda kigezo cha kazi: operesheni na kigezo cha kazi

Wacha tuandike upya kazi square kwa kutumia kazi ya lambda na tuipitishe kwenye kigezo func:

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

Kazi ya lambda inaweza kuandikwa kwenye kutofautisha:

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

Andika tena msimbo ufuatao kupitia kazi ya lambda:

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

Andika tena msimbo ufuatao kupitia kazi ya 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) )

Andika tena msimbo ufuatao kupitia kazi ya lambda:

def func(num1, num2, clb): res = clb(num1) + num2 return res def clb(num): return num ** 3 print(func(2, 6, clb))
Kiswahili
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Tunatumia kuki kwa ajili ya uendeshaji wa tovuti, uchambuzi na ubinafsishaji. Usindikaji wa data unafanyika kulingana na Sera ya Faragha.
kubali yote sanidi kataa