Hat Python so etwas wie eine leere String-Variable, wo Sie tun können:
if myString == string.empty:
Unabhängig davon, was ist der eleganteste Weg, um auf leere Zeichenkettenwerte zu prüfen? Ich finde die harte Kodierung """` jedes Mal für die Überprüfung einer leeren Zeichenfolge nicht so gut.
Leere Zeichenketten sind "falsy", was bedeutet, dass sie in einem booleschen Kontext als falsch betrachtet werden, so dass Sie dies einfach tun können:
if not myString:
Dies ist die bevorzugte Methode, wenn Sie wissen, dass Ihre Variable eine Zeichenkette ist. Wenn Ihre Variable auch ein anderer Typ sein könnte, sollten Sie myString == ""
verwenden. Weitere Werte, die in booleschen Kontexten falsch sind, finden Sie in der Dokumentation zu Truth Value Testing.
Aus [PEP 8] (http://www.python.org/dev/peps/pep-0008/), im Abschnitt ["Programmierempfehlungen"] (https://www.python.org/dev/peps/pep-0008/#programming-recommendations):
Für Sequenzen, (Strings, Listen, Tupel), verwenden Sie die Tatsache, dass leere Sequenzen falsch sind.
Sie sollten also verwenden:
if not some_string:
oder:
if some_string:
Nur zur Klarstellung: Sequenzen werden in einem booleschen Kontext zu False
oder True
ausgewertet, wenn sie leer sind oder nicht. Sie sind nicht gleich** zu False
oder True
.
Der eleganteste Weg wäre wahrscheinlich, einfach zu prüfen, ob es wahr oder falsch ist, z.B.:
if not my_string:
Sie sollten jedoch Leerzeichen entfernen, denn:
>>> bool("")
False
>>> bool(" ")
True
>>> bool(" ".strip())
False
Wahrscheinlich sollten Sie hier etwas deutlicher werden, es sei denn, Sie sind sich sicher, dass diese Zeichenfolge eine Art von Validierung durchlaufen hat und auf diese Weise getestet werden kann.