ubuntuusers.de

Python manuelle Indentation wird nicht erkannt

Status: Gelöst | Ubuntu-Version: Nicht spezifiziert
Antworten |

BaNnEd

Anmeldungsdatum:
23. Oktober 2007

Beiträge: 101

Kennt jemand des Problem dass (in mehreren Editoren) die Indentation nicht korrekt erkannt wird?

Immer wenn ich selbst einen Tab setze oder lösche zeigt mit der Editor einen fehler an (und auch beim ausführen wird der IndentationError gemeldet), z.b. wenn ein if-block endet und ein else kommt muss dieser ja auf die gleiche höhe wie if, ist aber unmöglich zu machen -.-

Wenn ich am ende einer Zeile mit <Enter> in eine neue Zeile gehe und der Editor die einrückung automatisch vornimmt klappt alles wunderbar.

Kann mir einer sagen wie man das Problem lösen kann?

Thx Ban

Lunar

Anmeldungsdatum:
17. März 2006

Beiträge: 5792

Ich würde mal vermuten, dass Du im Quelltext Tabulator-Zeichen und Leerzeichen vermischt hast. Da Python Tabulator-Zeichen mit acht Leerzeichen gleichsetzt, kann es sein, dass augenscheinlich korrekter Quelltext nicht funktioniert, weil im Editor eine andere Anzahl von Leerzeichen für ein Tab konfiguriert wurde (z.B vier).

Um solche Probleme zu vermeiden, nutze gemäß der Empfehlung von PEP8 immer vier Leerzeichen zur Einrückung, und konfiguriere den Editor so, dass er mit vier Leerzeichen einrückt, und ein Druck auf die Tabulatortaste kein Tab-Zeichen einfügt, sondern um eine Ebene tiefer einrückt.

BaNnEd

(Themenstarter)

Anmeldungsdatum:
23. Oktober 2007

Beiträge: 101

Habs jetzt rausbekommen... ja hatte bis jetzt immer tabs verwendet, und in den editoren wurden immer je 4 leerzeichen statt tabs verwendet...

Antworten |