⊗pyPmFnFIF 20 of 129 menu

Funktion i funktion i Python

I Python kan man deklarera andra funktioner inuti en funktion. Låt oss säga att vi har en yttre funktion outer, inuti vilken det finns en funktion inner:

def outer(): def inner(): pass

Exemplet ovan ser ganska enkelt ut. Men det finns ofta situationer när det i funktionskroppen outer förutom inner också utförs andra operationer. För att förenkla koden kunde man ha flyttat ut inner till ett yttre kodblock, men denna funktion kommer bara att användas en gång och bara inuti funktionen outer. Därför finns det ingen mening med att flytta ut den.

Låt oss titta på ett exempel där en lista skickas till funktionen outer. Och med hjälp av funktionen inner kommer det numeriska elementet i listan att höjas till kvadrat. För att göra detta deklarerar vi en tom lista res efter funktionen inner, i vilken element som har höjts till kvadrat kommer ackumuleras i en loop:

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

Låt oss anropa funktionen outer, skicka en listparameter till den och skriva ut resultatet till konsolen:

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

Skriv en yttre och en inre funktion som tillsammans skriver ut varje strängelement i listan med stor begynnelsebokstav.

Givna funktioner:

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

Skriv om koden så att func1 blir en inre funktion till func2.

Svenska
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Vi använder kakor för webbplatsens funktion, analys och personalisering. Behandling av data sker i enlighet med Integritetspolicyn.
acceptera alla anpassa avvisa