Seite 1 von 1

Anweisungs-Trennung

Verfasst: Montag 4. November 2002, 12:46
von leobm
komisch, kann es sein das python immer ein Tabulator vor jeder Zeile erwartet ? Weil nur dann bekomme ich nicht den folgenden Fehler.
IndentationError: expected an indented block
Ich arbeite mit Ultraedit.

Mh, Schade das Python als Anweisungsende ein Zeilumbruch verlangt, da gefällt mir das ";" z.B. unter Perl viel besser. Aber man kann sich ja an alles gewöhnen.:)

Verfasst: Montag 4. November 2002, 13:54
von Dookie
hi leobm,

Einrückungen sollten entweder Tabulatoren oder Spaces sein, nie in einem Source beides mischen! Am Besten stellst Du Deinen Editor so ein, daß er bei einem Druck auf Tab 4 Leerzeichen schreibt. Dann kann es zu keiner Vermischung kommen.
";" am Anweisungsende kannst Du machen, damit kannst Du auch mehrere Anwiesungen in einer Zeile schreiben.

Code: Alles auswählen

>>> a = 5; print a
5
>>>

Gruß

Dookie

Re: Anweisungs-Trennung

Verfasst: Montag 4. November 2002, 14:13
von hans
leobm hat geschrieben:Ich arbeite mit Ultraedit.
Ultaredit sagt mir jetz nicht so viel. Ich bin eingefleischter vi / gvim User. Die Windows Version dazu heißt z. B. Lemmy. Da kann man sich mit :set list nicht druckbare Sonderzeichen anzeigen lassen.
leobm hat geschrieben:Mh, Schade das Python als Anweisungsende ein Zeilumbruch verlangt, da gefällt mir das ";" z.B. unter Perl viel besser. Aber man kann sich ja an alles gewöhnen.:)
Du kannst aber mit \ am Zeilenende einen Zeilenumbruch unterdrücken. Oder ist das nur unter Linux so?

Hans

Re: Anweisungs-Trennung

Verfasst: Montag 4. November 2002, 14:48
von joerg
leobm hat geschrieben: Mh, Schade das Python als Anweisungsende ein Zeilumbruch verlangt, da gefällt mir das ";" z.B. unter Perl viel besser. Aber man kann sich ja an alles gewöhnen.:)
Also bei mir funktioniert das Semikolon. Ist sicherlich mit Vorsicht zu genießen, damit man die Einrückungen nicht durcheinanderbringt.

Folgendes macht genau das, was der Leser auch erwarten würde:

Code: Alles auswählen

x=0; y=10
for i in range(10):
    x+=i; y+=i
Ergebnis ist 45 bzw. 55.

Jörg

Verfasst: Montag 4. November 2002, 15:31
von ASCII158
Ich benutze auch den UltraEdit, wenn du mir deine Email-Adresse gibst, bekommst du eine wordfile für den editor von mir, dann macht er einrückungen (meistens) automatisch nach jedem ":\n" :wink:

Verfasst: Montag 4. November 2002, 16:21
von hans
eMail-Adresse ist doch gesetzt. Ich habe bei SF eine Erweiterung für Ultraedit gefunden. Vielleicht hilft die dir weiter.

http://sourceforge.net/projects/php4ue/

Ansonsten geht doch jeder halbwegs vernünftige Editor unter Windows. Wenn die Sache mit dem Syntaxhilighting nicht stört, könnte man auch den Delphieditor nehmen. Der ersetzt auf Wunsch jeden Tab durch Leerzeichen.

Hans

Verfasst: Montag 4. November 2002, 16:28
von ASCII158
ich meinte eigentlich auch leobm...