⊗pyPmFnFIF 20 of 129 menu

Kazi Ndani ya Kazi katika Python

Katika Python, ndani ya kazi moja unaweza kutangaza zingine. Hebu tuseme tuna kazi ya nje outer, ndani yake iko kazi inner:

def outer(): def inner(): pass

Mfano ulio hapo juu unaonekana rahisi kutosha. Hata hivyo, mara nyingi kuna hali ambapo katika mwili wa kazi outer zaidi ya inner shughuli zingine pia zinatekelezwa. Ili kurahisisha msimbo ingeweza kuwa inner nje ya block ya msimbo, hata hivyo kazi hii itatumika moja tu na tu ndani ya kazi outer. Kwa hivyo, kuiondoa nje haina maana.

Wacha tuchunguze mfano, wakati kazi outer inapewa orodha. Na kwa kutumia kazi inner kipengele cha nambari cha orodha kitaongezwa kwa nguvu ya mraba. Kwa hili, baada ya kazi inner tunatangaza orodha tupu res, ambayo vitakusanywa vipengele, viliyoinuliwa kwa mraba katika kitanzi:

def outer(lst): def inner(num): return num ** 2 res = [] for el in lst: res.append(inner(el)) return res

Wacha tuite kazi outer, tukiipitisha parameter orodha na tuonyeshe matokeo kwenye konsoli:

print(outer([2, 3, 5])) # itatoa [4, 9, 25]

Andika kazi ya nje na kazi ya ndani, ambayo kazi yao ya pamoja itatoa kila kipengele cha kamba cha orodha kwa herufi kubwa.

Kazi zilizopewa:

def func1(num): if num > 0: num += 2 return num def func2(iter): res = [] for el in iter: res.append(func1(el)) return res

Andika upya msimbo ili func1 iwe kazi ya ndani kwa func2.

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