Heim >Backend-Entwicklung >Python-Tutorial >Wie löst man Pythons UnboundLocalError: Globale vs. lokale Variablen?
UnboundLocalError in Python: Probleme mit dem Variablenbereich lösen
Die Fehlermeldung „UnboundLocalError: lokale Variable 'Var1' vor Zuweisung referenziert“ zeigt an, dass a Auf eine lokale Variable innerhalb einer Funktion wird zugegriffen, bevor ihr ein Wert zugewiesen wird. Im bereitgestellten Code ist die Variable „Var1“ nicht im Rahmen der „Funktion()“ definiert, sondern wird in den bedingten Anweisungen und Zuweisungsanweisungen innerhalb der Funktion verwendet.
Um dieses Problem zu beheben, Es ist notwendig, die Variablen „Var1“ und „Var2“ als globale Variablen innerhalb der Funktion zu deklarieren. Globale Variablen werden auf Modulebene definiert und können innerhalb von Funktionen aufgerufen werden. Um diese Variablen als global zu deklarieren, fügen Sie die folgende Zeile am Anfang der Funktion hinzu:
global Var1, Var2
Durch die Deklaration der Variablen als global erkennt der Python-Interpreter, dass sie stattdessen aus dem Bereich der Modulebene aufgelöst werden sollten der Erstellung lokaler Kopien innerhalb der Funktion. Dadurch kann die Funktion wie vorgesehen auf die Variablen „Var1“ und „Var2“ verweisen und diese ändern.
Hinweis: Die Verwendung globaler Variablen innerhalb von Funktionen sollte nach Möglichkeit vermieden werden, da dies zu Problemen führen kann zu verwirrendem und fehleranfälligem Code. Eine bessere Vorgehensweise besteht darin, Variablen vom Aufrufer explizit als Parameter an den Angerufenen zu übergeben oder sie als Ergebnisse zurückzugeben.
Das obige ist der detaillierte Inhalt vonWie löst man Pythons UnboundLocalError: Globale vs. lokale Variablen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!