⊗pyPmFnFIF 20 of 129 menu

Funksioni brenda funksionit në Python

Në Python, brenda një funksioni mund të deklarohen funksione të tjerë. Le të themi se kemi funksionin e jashtëm outer, brenda të cilit ndodhet funksioni inner:

def outer(): def inner(): pass

Shembulli i dhënë më sipër duket mjaft i thjeshtë. Sidoqoftë, shpesh ka situata kur në trupin e funksionit outer, përveç inner, ekzekutohen edhe operacione të tjera. Për të thjeshtuar kodin, mund të nxirrej inner në bllokun e jashtëm të kodit, por ky funksion do të përdoret vetëm një herë dhe vetëm brenda funksionit outer. Prandaj, nuk ka kuptim ta nxjerrim atë jashtë.

Le të shqyrtojmë një shembull, kur në funksionin outer i transmetohet një listë. Dhe me ndihmën e funksionit inner, elementi numerik i listës do të ngrihet në katror. Për këtë, pas funksionit inner deklarojmë listën bosh res, në të cilën do të grumbullohen elementët ngritur në katror në një cikël:

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

Le ta thërrasim funksionin outer, t'i japim atij si parametër listën dhe të shfaqim rezultatin në konsolë:

print(outer([2, 3, 5])) # do të shfaqë [4, 9, 25]

Shkruani një funksion të jashtëm dhe një të brendshëm, puna e përbashkët e të cilëve do të shfaqë çdo element vargor të listës me shkronjë të madhe.

Janë dhënë funksionet:

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

Rishkruani kodin në mënyrë që func1 të jetë funksion i brendshëm për func2.

Shqip
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Ne përdorim cookie për funksionimin e sajtit, analizën dhe personalizimin. Përpunimi i të dhënave bëhet në përputhje me Politikën e Privatësisë.
prano të gjitha konfiguro refuzo