Python 3: UnboundLocalError: local variable referenced before assignment

Dieser Fehler tritt auf, wenn Sie versuchen, auf eine Variable zuzugreifen, bevor sie einen Wert zugewiesen bekommen hat. Hier ist ein Beispiel für ein Code-Schnipsel, das diesen Fehler auslöst:

def Beispiel():
    print(x)
    x = 5

Beispiel()

Die Fehlermeldung lautet:

UnboundLocalError: local variable 'x' referenced before assignment

In diesem Beispiel wird die Variable x vor der Zuweisung eines Werts aufgerufen, was zu diesem Fehler führt. Um dies zu beheben, können Sie entweder die Zuweisung der Variable x vor dem print-Befehl verschieben oder ihr einen Anfangswert vor dem Ausdruck zuweisen.

def Beispiel():
    x = 5
    print(x)

Beispiel()

oder

def Beispiel():
    x = None
    print(x)
    x = 5

Beispiel()

Beide werden ohne Fehler funktionieren.