if else

Wenn du dir nicht sicher bist, in welchem der anderen Foren du die Frage stellen sollst, dann bist du hier im Forum für allgemeine Fragen sicher richtig.
lukasmarti
User
Beiträge: 31
Registriert: Samstag 8. April 2006, 17:10
Wohnort: lachen (schweiz)

if else

Beitragvon lukasmarti » Samstag 8. April 2006, 22:22

bei mir funktioniert das if und else nie kann mir jemand sagen was ich falsch mache.

>>> if x>5:
print "ok"
else:

IndentationError: unindent does not match any outer indentation level (<pyshell#2>, line 3)
>>>

DANKE SCHON MAL[/code]
Korsakov
User
Beiträge: 15
Registriert: Samstag 8. April 2006, 20:03

Beitragvon Korsakov » Samstag 8. April 2006, 22:35

hab zwar nicht viel ahnung von python (noch), aber ich denke der fehler ist der: nach dem "else:" einfach ne code anweisung! z.b:

Code: Alles auswählen

if bla < blub:
  print 'blub blub'
else:
  break
Benutzeravatar
Leonidas
Administrator
Beiträge: 16023
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Beitragvon Leonidas » Samstag 8. April 2006, 22:39

Hast du mal überlegt, was du da in den Händen hältst? Das ist Python, eine der Sprachen in deren Charakterisierung fast immer steht dass sie auf Einrückung bestehen (siehe Strukturierung durch Einrücken in der Wikipedia).

Code: Alles auswählen

In [11]: if x > 5:
   ....:     print 'ok'
   ....: else:
   ....:     print 'nicht ok'


Sorry, wenn ich böse klinge, aber man sollte sich doch zumindest ein wenig mit der Sprache beschäftigen, das spart viel Fragerei.
My god, it's full of CARs! | Leonidasvoice vs Modvoice
lukasmarti
User
Beiträge: 31
Registriert: Samstag 8. April 2006, 17:10
Wohnort: lachen (schweiz)

Beitragvon lukasmarti » Sonntag 9. April 2006, 08:01

danke für die antworten aber rükt python die zeilen selber ein???????
es funktioniert immer noch nicht
Korsakov
User
Beiträge: 15
Registriert: Samstag 8. April 2006, 20:03

Beitragvon Korsakov » Sonntag 9. April 2006, 08:18

ne, die einrückung musst du selber machen, sobald die nicht stimmt: error

lies dir mal lieber einn gutes tutorial durch, empfehlen kann ich dir "A Byte of Python" (deutsche übersetzung): http://abop-german.berlios.de/read/index.html
lukasmarti
User
Beiträge: 31
Registriert: Samstag 8. April 2006, 17:10
Wohnort: lachen (schweiz)

Beitragvon lukasmarti » Sonntag 9. April 2006, 08:18

und was bedeutet in[11]
Benutzeravatar
mitsuhiko
User
Beiträge: 1790
Registriert: Donnerstag 28. Oktober 2004, 16:33
Wohnort: Graz, Steiermark - Österreich
Kontaktdaten:

Beitragvon mitsuhiko » Sonntag 9. April 2006, 08:19

lukasmarti hat geschrieben:und was bedeutet in[11]


Das ist der Prompt von IPython, einer interaktiven Python Konsole.
TUFKAB – the user formerly known as blackbird
henning
User
Beiträge: 274
Registriert: Dienstag 26. Juli 2005, 18:37

Beitragvon henning » Sonntag 9. April 2006, 08:38

An diesem Beispiel sieht man auch gut, das man die Fehlermeldungen des Python-Interpreters ruhig mal näher anschauen kann, ab und zu gibt einem das nämlich tatsächlich die Richtung an, in der der Fehler zu suchen ist ;-)
helmut
User
Beiträge: 57
Registriert: Mittwoch 2. November 2005, 07:45
Wohnort: Dormagen

Beitragvon helmut » Sonntag 9. April 2006, 08:41

Hallo,

ehe es zu weiteren Missverstaendnissen kommt, kommt hier der "nackte" Code:

Code: Alles auswählen

if x>5:
    print "OK"
else:
    print "nicht OK"

Gruss, Helmut
Benutzeravatar
Leonidas
Administrator
Beiträge: 16023
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Beitragvon Leonidas » Sonntag 9. April 2006, 11:57

lukasmarti hat geschrieben:rükt python die zeilen selber ein???????

Nein, woher soll Python denn wissen, wann er einrücken muss und wann nicht? IPython kann neben einer Menge anderer Sachen auch Halbautomatisch einrücken.
My god, it's full of CARs! | Leonidasvoice vs Modvoice
Benutzeravatar
Mr_Snede
User
Beiträge: 387
Registriert: Sonntag 8. Februar 2004, 16:02
Wohnort: D-Dorf, Bo

Beitragvon Mr_Snede » Sonntag 9. April 2006, 14:27

Vielleicht hilft ein kleines Video zur Benutzung der Pythonshell weiter:
--> http://showmedo.com/videoPage?name=Test ... nMSWindows

Leonidas benutze in seinem vorigem Post mit der "[11]"(wie er schon erwähnte) eine erweiterte Pythonshell Namens Ipython.
auch dazu gibt es Videos:
--> http://showmedo.com/videoListPage?listK ... hon_JerolH

Eine Übersicht über weitere (Python)Videos gibt es hier:
--> http://showmedo.com/videoListPage?listK ... PythonList

@Leonidas
Nein, woher soll Python denn wissen

Vielleicht am Doppelpunkt am Ende einer Zeile wie jeder Editor mit Pythonsupport auch?
Die IDLE Shell rückt automatisch ein.

cu Sebastian
Benutzeravatar
Leonidas
Administrator
Beiträge: 16023
Registriert: Freitag 20. Juni 2003, 16:30
Kontaktdaten:

Beitragvon Leonidas » Sonntag 9. April 2006, 14:33

Mr_Snede hat geschrieben:Vielleicht am Doppelpunkt am Ende einer Zeile wie jeder Editor mit Pythonsupport auch?
Die IDLE Shell rückt automatisch ein.

Ein-Rücken schon, aber Aus-rücken geht nicht.

Ich finde ja SciTEs verhalten bei sowas lustig:

Code: Alles auswählen

blah = blahbla[1:]

dann versucht er die nächste Zeile einzurücken.
My god, it's full of CARs! | Leonidasvoice vs Modvoice
Benutzeravatar
Mr_Snede
User
Beiträge: 387
Registriert: Sonntag 8. Februar 2004, 16:02
Wohnort: D-Dorf, Bo

Beitragvon Mr_Snede » Sonntag 9. April 2006, 15:03

jupp über dieses Verhalten von Scite bin ich auch schon gestolpert.
Aber bisher überwiegen die Fälle in denen Scite richtig einrückt somit stört mich das nicht.

Hmm wäre das nicht ein super Patent?
Automatisches Deindent, wenn der Verfasser es will?
Das Schlimme ist, es gibt bestimmt jemand, der das schon angemeldet hat. :shock:

cu Sebastian
Benutzeravatar
birkenfeld
Python-Forum Veteran
Beiträge: 1603
Registriert: Montag 20. März 2006, 15:29
Wohnort: Die aufstrebende Universitätsstadt bei München

Beitragvon birkenfeld » Sonntag 9. April 2006, 15:31

Mr_Snede hat geschrieben:Hmm wäre das nicht ein super Patent?
Automatisches Deindent, wenn der Verfasser es will?
Das Schlimme ist, es gibt bestimmt jemand, der das schon angemeldet hat.


Python wird bald den Operator "is not" aus der Sprache schmeißen müssen, der ist nämlich von Microsoft patentiert.
BlackJack

Beitragvon BlackJack » Montag 10. April 2006, 07:57

birkenfeld hat geschrieben:Python wird bald den Operator "is not" aus der Sprache schmeißen müssen, der ist nämlich von Microsoft patentiert.


Nur wenn der Operator ``IsNot`` geschrieben würde und Python eine von BASIC abgeleitete Sprache wäre.

Ansonsten würde das Patent auch den ``!=`` Operator in Java betreffen, der genau das gleiche tut.

Wer ist online?

Mitglieder in diesem Forum: Bing [Bot]