Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Lære Indlejrede Funktioner | Variabelscope, Indlejrede Funktioner og Closures
Funktionelle Programmeringskoncepter i Python

bookIndlejrede Funktioner

Stryg for at vise menuen

Når du ønsker at organisere din kode for bedre læsbarhed, indkapsling eller genbrug, kan du definere en funktion inde i en anden funktion. Disse kaldes indlejrede funktioner. I Python opretter du en indlejret funktion ved at skrive en funktionsdefinition inde i kroppen af en anden. Dette gør det muligt at skjule hjælpefunktionalitet, som ikke skal være tilgængelig udefra, eller at generere specialiserede funktioner dynamisk.

Syntaksen for en indlejret funktion er enkel: placer blot en def-sætning inden for kroppen af en anden def. Den indre funktion kan få adgang til variabler fra den omsluttende funktion, hvilket er nyttigt til at skabe tilpassede funktionaliteter eller hjælpeberegninger, der afhænger af argumenterne til den ydre funktion.

En praktisk anvendelse af indlejrede funktioner er at returnere en funktion, der er tilpasset med parametre fra den ydre funktion. Dette bruges ofte i funktionel programmering til at generere specialiserede funktioner eller til at indkapsle logik, der ikke skal forurene det globale scope.

1234567891011
def make_multiplier(factor): # 'multiplier' function is nested inside 'make_multiplier' def multiplier(x): return x * factor return multiplier double = make_multiplier(2) triple = make_multiplier(3) print(double(5)) print(triple(4))
copy

1. Hvorfor kunne du finde på at definere en funktion inde i en anden funktion?

2. Hvad er scope for en variabel defineret i en omsluttende funktion?

question mark

Hvorfor kunne du finde på at definere en funktion inde i en anden funktion?

Vælg det korrekte svar

question mark

Hvad er scope for en variabel defineret i en omsluttende funktion?

Vælg det korrekte svar

Var alt klart?

Hvordan kan vi forbedre det?

Tak for dine kommentarer!

Sektion 3. Kapitel 3

Spørg AI

expand

Spørg AI

ChatGPT

Spørg om hvad som helst eller prøv et af de foreslåede spørgsmål for at starte vores chat

Sektion 3. Kapitel 3
some-alt