UnboundLocalError: local variable referenced before assignment
UnboundLocalError: local variable referenced before assignment
Eine lokale Variable wurde gelesen, bevor sie innerhalb der Funktion zugewiesen wurde.
Was es bedeutet
Eine lokale Variable wurde gelesen, bevor sie innerhalb der Funktion zugewiesen wurde.
Wahrscheinliche Ursache
Die Zuweisung an einen Namen irgendwo in einer Funktion macht ihn für die gesamte Funktion lokal, sodass die Referenzierung vor dieser Zuweisung (oder die beabsichtigte Verwendung einer globalen Variable) fehlschlägt.
So behebst du es
Initialisiere die Variable vor der Verwendung, oder deklariere 'global name' / 'nonlocal name', wenn du eine äußere Variable ändern wolltest. Vermeide die Wiederverwendung eines äußeren Namens, den du nur lesen möchtest.
Weitere Python-Fehler
Über Fehlercode-Nachschlagen
Die Fehlercode-Suche ist ein durchsuchbares Verzeichnis mit mehr als 200 gängigen Fehlermeldungen und -codes aus 12 Kategorien: HTTP-Statuscodes, Windows-Fehlercodes, Browser- und Netzwerkfehler, JavaScript, Python, PHP, Node.js und npm, Java, MySQL, Git, Linux-Shell-Fehler sowie E-Mail-/SMTP-Codes. Jeder Eintrag ist verständlich formuliert, damit Sie schnell weiterkommen.
Jeder Fehler wird in drei Teilen erklärt: was die Meldung tatsächlich bedeutet, wodurch sie meist verursacht wird und mit welchen konkreten Schritten Sie sie beheben. So wird aus einer kryptischen Zeichenfolge wie ERR_CONNECTION_REFUSED oder 0x80070005 eine umsetzbare Checkliste statt eines Ratespiels.
Sie können die Liste nach Kategorie filtern, nach Code, Konstante oder Textfragment suchen und jeden Code mit einem Klick kopieren. Jeder Fehler hat außerdem eine eigene Detailseite mit verwandten Fehlern derselben Kategorie, sodass Sie den direkten Link zur passenden Lösung speichern oder teilen können.
So verwenden Sie Fehlercode-Nachschlagen
- Geben Sie den Fehlercode oder die Meldung in das Suchfeld ein — zum Beispiel 404, ERR_NAME_NOT_RESOLVED oder 0x80070005.
- Grenzen Sie die Ergebnisse mit dem Kategoriefilter ein (HTTP, Windows, JavaScript, MySQL und so weiter), falls die Suche zu viele Treffer liefert.
- Öffnen Sie den passenden Eintrag, um Bedeutung, wahrscheinliche Ursache und Lösung zu lesen.
- Nutzen Sie die Kopieren-Schaltfläche, um den genauen Code für einen Bugreport oder ein Support-Ticket zu übernehmen.
- Prüfen Sie den Bereich mit verwandten Fehlern für weitere Einträge derselben Kategorie.