If-Abfrage verkürzen Python?
Hi, wie könnte man die IF-Abfrage verkürzen? Und ich will nicht das der Input leer bleibt, aber wenn man mehrere Lehrzeichen setzt, funktioniert es trotzdem.
test = input('Test: ').split(' ')
if test == '':
print('Gib etwas ein!')
if test == ' ':
print('Gib etwas ein!')
Danke :)
2 Antworten
Das geht viel kürzer und eleganter so:
test = input('Test: ')
if not test.strip():
print('OMFG!11!!! WTF!?!')
Die Ausgabe erscheint also nur, wenn der eingegebene String a) leer, oder b) nur aus Whitespace-Zeichen besteht.
Allerdings kann man das ganze auch noch etwas übersichtlicher machen:
test = input('Test: ')
if test.strip():
print('OK!')
else:
print('NG!')
Das wäre am kürzesten und sprechendsten.
Übrigens wird die Lösung mit isspace() nicht funktionieren, falls der Nutzer gar nichts eingibt, du es also mit einem Leerstring zu tun hast!
Naja, viel Spaß damit! :)
Woher ich das weiß:Berufserfahrung
Guter Tipp. Wusste das mit isspace() und dem Leerstring gar nicht :)
if test.isspace():
print('Gib etwas ein!')
Woher ich das weiß:Hobby – Hobbyprogrammierer