Kursinhalt
Fortgeschrittene Python-Techniken
Fortgeschrittene Python-Techniken
Closures
Python-Closures treten auf, wenn eine innere Funktion in eine äußere Funktion eingebettet ist und effektiv auf einen Wert aus dem äußeren Bereich verweist. Sie sind nützlich, um globale Variablen zu umgehen.
Closures sind nützlich, wenn Sie einige Methoden verwenden möchten, aber nicht genug, um eine ganze Klasse zu erstellen. Sie helfen, die Dinge einfach und übersichtlich zu halten. Wenn Sie jedoch viele Methoden und Attribute verwalten müssen, ist es besser, stattdessen eine Klasse zu verwenden.
Schauen wir uns einige Beispiele an, um dies besser zu verstehen.
def calculate_income(percent): def annual_income(amount): return amount * percent / 100 return annual_income # function returned by outer function interest_rate_3 = calculate_income(3) # function assigned to the variable interest_rate_7 = calculate_income(7) print(interest_rate_3(1500)) print(interest_rate_3(2000)) print(interest_rate_7(1500)) print(interest_rate_7(2000))
Diese Funktion berechnet das Jahreseinkommen für eine Bareinlage. Die Closure-Funktionalität ermöglicht es uns, eine Funktion in einer Variablen mit einem bestimmten Prozentsatzwert zu speichern, sodass wir sie mehrfach wiederverwenden können.
Zusammenfassend ermöglichen Closures das Erstellen und Zurückgeben von Funktionen, die sich Werte aus ihrem umgebenden Bereich "merken", was besonders nützlich ist, um spezialisierte Funktionen mit vordefiniertem Verhalten basierend auf bestimmten Parametern zu erstellen.
Danke für Ihr Feedback!