⊗pyPmFnFIF 20 of 129 menu

Funkcija funkcijā Python

Python iekšā vienās funkcijās var deklarēt citas. Pieņemsim, ka mums ir ārējā funkcija outer, kuras iekšpusē atrodas funkcija inner:

def outer(): def inner(): pass

Iepriekš minētais piemērs izskatās pietiekami vienkārši. Tomēr bieži rodas situācijas, kad funkcijas outer pamattekstā, izņemot inner, tiek izpildītas arī citas darbības. Lai vienkāršotu kodu, varēja iznest inner uz ārējo koda bloku, taču šī funkcija tiks izmantota tikai vienu reizi un tikai funkcijas outer iekšienē. Tāpēc to iznest ārpusē nav jēgas.

Apskatīsim piemēru, kad funkcijai outer tiek nodots saraksts. Un ar funkcijas inner palīdzību skaitliskais saraksta elements tiks pacelts kvadrātā. Lai to izdarītu, pēc funkcijas inner deklarējam tukšu sarakstu res, kurā tiks uzkrāti elementi, kas ciklā pacelti kvadrātā:

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

Izsauksim funkciju outer, padodam tai parametru sarakstu un izvadām rezultātu konsolē:

print(outer([2, 3, 5])) # izvadīs [4, 9, 25]

Uzrakstiet ārējo un iekšējo funkciju, kuru kopīgais darbs izvadīs katru virknes elementu sarakstā ar lielo burtu.

Dotas funkcijas:

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

Pārrakstiet kodu tā, lai func1 būtu iekšējā funkcija priekš func2.

Latviešu
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Mēs izmantojam sīkdatnes, lai nodrošinātu vietnes darbību, analīti un personalizāciju. Datu apstrāde notiek saskaņā ar Konfidencialitātes politiku.
pieņemt visus iestatīt noraidīt