[Python-de] Verhindern iener Leereingabe
Albert Hermeling
albert.hermeling at t-online.de
Sa Sep 29 11:13:09 CEST 2007
Am Freitag, 28. September 2007 17:47 schrieb Philipp Walderdorff:
Guten Morgen Philipp,
> Frage: Wie verhindert man die LeerEingabe?
> Habe nach langer Suche folgendes gefunden, verstehe aber nicht, wie das
> funkioniert.
In Python sind Variabeln die nicht belegt sind per Definition False. Im
Programm unten wird durch "if not a" (wenn nicht a) genau das geprüft. Ist
der Eingabe-String den raw_input liefert leer beendet sich das Programm.
Ansonsten wird command ausgeführt.
> def command(s):
> print "command:", s
>
> while 1:
> a = raw_input("a-input")
> if not a: break
> command(a)
>
> print "finished"
>
> Vielleicht gibt es eine einfachere Varieante.
Nein, das ist so ziemlich die einfachste Variante. Ich würde Dir ein
Einsteiger Buch zum Thema Programmieren empfehlen, am besten eins das als
Lernsprache Python einsetzt :-). Damit schlägst Du gleich zwei Fliegen mit
einer Klappe :-). Sich nur auf das Internet zu verlassen ist für ein
Anfänger - denke ich - etwas verwirrend.
Ich habe Dein Beispiel ein bisschen erweitert probiere das mal aus:
def printer(a):
print a
def command(s):
print "command:", s
while 1:
a = raw_input("a-input")
if not a: break
command(a)
print "finished"
Rufe die Funktion command so auf:
command(printer)
Kleiner Tipp von mir, IDEL ist zum Interaktiven Ausprobieren von Python sehr
gut geeignet, mach davon sehr stark (!) Gebrauch.
Viel Spaß beim lernen
Albert
Mehr Informationen über die Mailingliste python-de