Problem mit def

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.
Andyh
User
Beiträge: 319
Registriert: Dienstag 8. Januar 2008, 19:52
Kontaktdaten:

Problem mit def

Beitragvon Andyh » Dienstag 8. Januar 2008, 20:01

Hallo

Da dies mein erster Beitrag ist stelle ich mich kurz vor:
Ich heiße Andreas Hofmann und wohne in Bad Buchau, bin 18 jahre alt.

ich habe ein Probelm und finde es nicht (ja die suche wurde schon gekitzelt)

Code: Alles auswählen

def frage2():
   print "Welches jahr haben wir?"
   print "1: 2008"
   print "2: 2007"
   print "3: 2009"
   print "4: 1999"
   erg == input ("Bitte Antworten: ")
   if erg == "1":           
       print "RICHTIG"      
       frag = raw_input ("naechste Frage? ja / nein ")
 =>             if frag == "ja":
                    frage3()
                if frag == "nein":
                    print "sie haben gewonnen"


bis zu der im Pfeil markierten stelle macht IDLE keine probleme, aber in der Zeile kommt dann ein Fester in dem ich aof OK klicken kann und dann steht der Cursor in der Zeile.

Gruß
Andyh
Zuletzt geändert von Andyh am Dienstag 8. Januar 2008, 20:17, insgesamt 1-mal geändert.
BlackJack

Beitragvon BlackJack » Dienstag 8. Januar 2008, 20:08

Da wird nicht nur ein Fenster kommen, sondern auch eine Fehlermeldung. Und zwar eine, die mit Einrückung zu tun hat. Die Zeilen sind falsch eingerückt.
Andyh
User
Beiträge: 319
Registriert: Dienstag 8. Januar 2008, 19:52
Kontaktdaten:

Beitragvon Andyh » Dienstag 8. Januar 2008, 20:13

Ich hatte vergessen hinzuschreiben das ich das schon versucht habe.

Wie muss sie eingrückt werden?
Python 47
User
Beiträge: 574
Registriert: Samstag 17. September 2005, 21:04

Beitragvon Python 47 » Dienstag 8. Januar 2008, 20:20

Code: Alles auswählen

def frage2():
    print "Welches jahr haben wir?"
    print "1: 2008"
    print "2: 2007"
    print "3: 2009"
    print "4: 1999"
    erg = raw_input ("Bitte Antworten: ")
    if erg == "1":
        print "RICHTIG"
        frag = raw_input ("naechste Frage? ja / nein ")
        if frag == "ja":
            frage3()
        if frag == "nein":
            print "sie haben gewonnen"


Du hattest noch einige weitere Fehler drin. Wenn du festlegst das nach der Funktionsdefinition 4 Stellen eingerückt werden, musst du auch überall in der Definition 4 Stellen einrücken.

Du überprüfst erg=="1", benutzt aber input() was den Typ der Eingabe behält. Wenn du schon darauf prüfst ob erg=="1"(Ein String) ist, dann benutze raw_input(), da dies immer einen String zurück gibt.

Zeile 11 muss ein == statt des = hin.
mfg

Thomas :-)
Andyh
User
Beiträge: 319
Registriert: Dienstag 8. Januar 2008, 19:52
Kontaktdaten:

Beitragvon Andyh » Dienstag 8. Januar 2008, 20:23

Hallo

Besten Dank
Arbeite erst seit gester mit Python, hoffe ich muss nicht so schnell wieder ne blöde Frage stellen.

Gruß
Andyh
Andy
User
Beiträge: 196
Registriert: Sonntag 1. Januar 2006, 20:12
Wohnort: aus dem hohen Norden....

Beitragvon Andy » Dienstag 8. Januar 2008, 20:26

Andyh hat geschrieben:Hallo

Besten Dank
Arbeite erst seit gester mit Python, hoffe ich muss nicht so schnell wieder ne blöde Frage stellen.

Gruß
Andyh


Fang langsamer an. Funktionen sind noch nichts für Dich!

Gruss Andy
lunar

Beitragvon lunar » Donnerstag 10. Januar 2008, 19:42

Andy hat geschrieben:
Andyh hat geschrieben:Hallo

Besten Dank
Arbeite erst seit gester mit Python, hoffe ich muss nicht so schnell wieder ne blöde Frage stellen.

Gruß
Andyh


Fang langsamer an. Funktionen sind noch nichts für Dich!


Unsinn... das offizielle Python-Tutorial kann man an einem Nachmittag durchaus soweit durcharbeiten, dass man in der Lage ist, Funktionen (mehr oder weniger) sinnvoll einzusetzen. Klassen und Objekte, da magst du reicht haben, aber einfache Funktionen sind trivial.

Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder