Fehlerbehebungen in Python
Wenn ein Script nicht zu Ende durchläuft und ein Fehler ausgegeben
wird, dann erscheint im Python Editor
eine genaue Beschreibung zum Fehler mit der entsprechenden
Zeilennummer.
- Öffnen Sie den Python Editor und das entsprechende Script und
klicken Sie auf Ausführen.
- Das Script wird ausgeführt und die Fehlermeldung erscheint:

- Im Python Editor erscheint unten folgende Info:
Traceback (most recent call last):
File "<string>", line 48, in ?
File "<string>", line 6, in InputBox
NameError: global name 'frm2' is not defined
Bedeutung:
line 48 Funktion InputBox wird in Zeile 48 aufgerufen
line 6 Der Fehler tritt auf in Zeile 6
- Scrollbalken gedrückt halten und zur Zeile 6 navigieren:

Der Fehler ist nun klar. frm2 ist ein Tippfehler und sollte eigentlich frm heissen. - Fehler korrigieren. Speichern. Und das Script wieder ausführen.
Häufige Fehlerquellen
Verwendung von Variablen
Bei der Verwendung von Variablen muss auf die Gross-Kleinschreibung geachtet werden. Python ist case-sensitiv. Beim Verwenden von Variablen muss immer beachtet werden, dass die Variable 1:1 übereinstimmt.
var1 ist nicht gleich Var1
In solchen Fällen ist es eher schwierig, den Fehler zu finden, weil Python in bestimmten Fällen keinen Fehler ausgibt, sondern eine neue Variable 'Var1' erzeugt. Daher immer darauf achten, dass die verwendete Variable auch exakt benannt wird.
Einrückung
Der Python Interpreter behandelt eine Einrückung richtig, wenn diese 4 Leerzeichen beinhaltet. Ein Tabulator wird in einem Python Editor automatisch durch 4 Leerzeichen ersetzt.
Sollte ein Codeteil von einer Webseite oder von einer anderen Textdatei in den Python Editor kopiert werden, dann muss darauf geachtet werden, dass es keine Einrückungen mit Tabulatoren hat. Falls dies der Fall ist, müssen die Tabulatoren durch 4 Leerzeichen ersetzt werden. Diverse Editoren unterstützen die Option "Tabulator ersetzen durch x-Zeichen".
Sammeltypen(Liste, Wörterbücher)
Sammeltypen sollten vor der Verwendung sicherheitshalber erstellt
werden, damit es nicht zu unterwarteten Fehlern kommt (Zugriff auf oder
Rückgabe von nicht bestehenden Listen etc.)
- Liste erzeugen: list = []
- Dictionary erzeugen: dict = {}
| erstellt: | 22.02.2010 |
|---|---|
| geändert: | 22.02.2010 |
| Produktlinien: | Expert |
| Module: | Leistung & CRM |
