[Python-de] Re: Problem mit einer Schleife
Gerhard Häring
gerhard.haering at opus-gmbh.net
Fri Sep 27 12:48:20 EDT 2002
Andreas Grytz wrote:
> Hallo,
>
> ich knobel gerade an einer Schleife, die absolut nicht das tun will, was
> ich gerne möchte.
>
> Ich habe folgender Funktion geschrieben, die solange sich selbst
> aufrufen soll, bi keine Eingabe mehr erfolgt:
Warum soll sich die Funktion selber aufrufen? Die Kombination aus
Endlosschleife und rekursiver Funktion macht für mich nicht besonders viel Sinn
;-) Vielleicht solltest du dich für eines von beiden entscheiden?
>
> def getUrl(command):
> """Trägt die Links ein."""
>
> while 1:
> print command
> url = raw_input("Index ["+month+"]: ")
> if url == "q":
> break
> elif url in ["h","H","?","help"]:
> print """Index help:
> Type number to choose from list.
> q quit (ignore changes)
> h show this help"""
> getUrl(command)
> elif url != "":
> index.write(url)
> command = "Bitte nächste eingeben. Beenden mit [q]."
> getUrl(command)
>
> Jetzt passiert folgendes: Die Abfrage beendet sich erst, wenn ich drei
> mal hintereinander "q" eingebe. Hat jemand daür eine Erklärung?
Mit q springst du aus einer Rekursionsebene hinaus. Du hast aber scheinbar
vorher schon zwei Mal getURL() aufgerufen.
-- Gerhard
More information about the Python-de
mailing list