Python-Strings sind unveränderlich und müssen bei der Diskussion ihrer Operationen komplexer behandelt werden. Beachten Sie, dass eine Zeichenfolge mit Leerzeichen eigentlich eine leere Zeichenfolge ist, aber eine Größe ungleich Null hat. In diesem Artikel wurde auch dieses Problem und die Lösung dafür besprochen. Sehen wir uns verschiedene Methoden an Überprüfen Sie, ob String leer ist Python .
Beispiel
Input: [' '] Output: Yes Explanation: In this, We are checking if the string is empty or not.>
Überprüfen Sie die leere Zeichenfolge in Python
Hier sind verschiedene Methoden, um in Python zu überprüfen, ob ein String leer ist oder nicht.
- Verwendung von len()
- Verwendung von not()
- Verwendung von not + str.strip()
- Verwendung von not + str.isspace
- Verwendung des Listenverständnisses
- Verwenden von Bool
- Verwendung von Strip-Methoden
- Verwenden der Funktion „Operator + strip()“.
- Verwenden der Funktion all()
- Mit try/exclusive
Python Check String Empty mit Len()
Benutzen nur() ist die allgemeinste Methode zur Prüfung auf Zeichenfolgen mit der Länge Null. Auch wenn dabei die Tatsache ignoriert wird, dass eine Zeichenfolge, die nur Leerzeichen enthält, praktisch auch als leere Zeichenfolge betrachtet werden sollte, selbst wenn sie ungleich Null ist.
Python3
# initializing string> test_str1> => ''> test_str2> => ' '> # checking if string is empty> print> (> 'The zero length string without spaces is empty ? : '> , end> => '')> if> (> len> (test_str1)> => => 0> ):> > print> (> 'Yes'> )> else> :> > print> (> 'No'> )> # prints No> print> (> 'The zero length string with just spaces is empty ? : '> , end> => '')> if> (> len> (test_str2)> => => 0> ):> > print> (> 'Yes'> )> else> :> > print> (> 'No'> )> |
Round-Robin-Planung
>
>
Ausgabe
The zero length string without spaces is empty ? : Yes The zero length string with just spaces is empty ? : No>
Python-Prüfzeichenfolge leer mit Not()
Der Not-Operator kann die Aufgabe auch ähnlich wie len() ausführen und nach einer Zeichenfolge mit der Länge 0 suchen, aber wie oben betrachtet er auch die Zeichenfolge mit nur Leerzeichen als nicht leer, was praktisch nicht der Fall sein sollte.
Python3
# initializing string> test_str1> => ''> test_str2> => ' '> # checking if string is empty> print> (> 'The zero length string without spaces is empty ? : '> , end> => '')> if> (> not> test_str1):> > print> (> 'Yes'> )> else> :> > print> (> 'No'> )> # prints No> print> (> 'The zero length string with just spaces is empty ? : '> , end> => '')> if> (> not> test_str2):> > print> (> 'Yes'> )> else> :> > print> (> 'No'> )> |
>
>
Ausgabe
The zero length string without spaces is empty ? : Yes The zero length string with just spaces is empty ? : No>
Leerer Python-String In sing nicht + str.strip()
Das Problem einer leeren Zeichenfolge mit der Länge Null kann möglicherweise durch die Verwendung von strip() behoben werden. Strip() gibt „true“ zurück, wenn es auf Leerzeichen stößt. Daher kann die Prüfung darauf das Problem der Prüfung auf eine rein leere Zeichenfolge lösen.
Python3
# initializing string> test_str1> => ''> test_str2> => ' '> # checking if string is empty> print> (> 'The zero length string without spaces is empty ? : '> , end> => '')> if> (> not> (test_str1> and> test_str1.strip())):> > print> (> 'Yes'> )> else> :> > print> (> 'No'> )> # prints Yes> print> (> 'The zero length string with just spaces is empty ? : '> , end> => '')> if> (> not> (test_str2> and> test_str2.strip())):> > print> (> 'Yes'> )> else> :> > print> (> 'No'> )> |
>
>
Ausgabe
The zero length string without spaces is empty ? : Yes The zero length string with just spaces is empty ? : Yes>
Überprüfen Sie den leeren String Python u sing nicht + str.isspace
Funktioniert ähnlich wie die obige Methode und prüft, ob die Zeichenfolge Leerzeichen enthält. Diese Methode ist effizienter, da strip() auch die Strip-Operation ausführen muss, was ansonsten Rechenlasten erfordert. Die Anzahl der Leerzeichen ist gut.
Python3
# initializing string> test_str1> => ''> test_str2> => ' '> # checking if string is empty> print> (> 'The zero length string without spaces is empty ? : '> , end> => '')> if> (> not> (test_str1> and> not> test_str1.isspace())):> > print> (> 'Yes'> )> else> :> > print> (> 'No'> )> # prints Yes> print> (> 'The zero length string with just spaces is empty ? : '> , end> => '')> if> (> not> (test_str2> and> not> test_str2.isspace())):> > print> (> 'Yes'> )> else> :> > print> (> 'No'> )> |
>
>
Ausgabe
The zero length string without spaces is empty ? : Yes The zero length string with just spaces is empty ? : Yes>
Überprüfen Sie, ob die Zeichenfolge leer ist oder kein Listenverständnis verwendet
Bei diesem Ansatz wird der Text mithilfe des Listenverständnisses in eine Liste von Zeichen analysiert und anschließend ermittelt, ob die Liste leer ist. Wir können beurteilen, ob die Zeichenfolge leer ist oder nicht, indem wir den Wahrheitsgehalt der Liste beurteilen.
Python3
string> => ''> x> => [> 'no'> if> len> (string)>> 0> else> 'yes'> ]> print> (x)> |
>
>
Ausgabe
['yes']>
Überprüfen Sie, ob die Python-Zeichenfolge leer ist oder Bool nicht verwendet wird
Ein Ansatz ist die Verwendung von Bool-Funktion . Die bool-Funktion gibt „False“ für leere Zeichenfolgen und „True“ für nicht leere Zeichenfolgen zurück. Hier ist ein Beispiel für die Verwendung der Bool-Funktion, um zu überprüfen, ob eine Zeichenfolge leer ist oder nicht.
Python3
# Initializing a string> test_str> => ''> # Checking if the string is empty> if> not> bool> (test_str):> > print> (> 'The string is empty.'> )> else> :> > print> (> 'The string is not empty.'> )> #This code is contributed by Edula Vinay Kumar Reddy> |
>
>
Ausgabe
The string is empty.>
Sie können die Bool-Funktion auch verwenden, um zu überprüfen, ob eine Zeichenfolge leer ist oder nicht, nachdem Sie alle führenden oder nachgestellten Leerzeichen mit der Strip-Methode entfernt haben:
Python3
# Initializing a string> test_str> => ' '> # Checking if the string is empty after removing leading and trailing whitespaces> if> not> bool> (test_str.strip()):> > print> (> 'The string is empty.'> )> else> :> > print> (> 'The string is not empty.'> )> #This code is contributed by Edula Vinay Kumar Reddy> |
>
Java-Serverseiten
>
Ausgabe
The string is empty.>
Python-Prüfung, ob String ist bei Verwendung der Strip-Methode leer
Hier werden wir Python verwenden strip()-Methoden um zu überprüfen, ob die Zeichenfolge leer ist oder nicht.
Python3
#input empty with and without spaces string> s> => ''> str> => ' '> > if> s.strip():> > print> (f> 'string, string1 = '{s}', with no spaces is not empty'> )> else> :> > print> (f> 'string, string1 = '{s}', with no spaces is empty'> )> > if> str> .strip():> > print> (f> 'string, string2 = '{str}', with spaces is not empty'> )> else> :> > print> (f> 'string, string2 = '{str}', with spaces is empty'> )> |
>
>
Ausgabe
string, string1 = '', with no spaces is empty string, string2 = ' ', with spaces is empty>
Überprüfen Sie, ob die Zeichenfolge leer ist oder nicht verwendet wird, und verwenden Sie die Funktion „Operator + strip()“.
Bei diesem Ansatz wird der Operator „and“ verwendet, um zwei Tests zu kombinieren: Bestimmen, ob die Zeichenfolge nicht „None“ ist, und Bestimmen, ob die entfernte Version der Zeichenfolge leer ist. Führende und nachfolgende Leerzeichen werden durch die Funktion „strip()“ aus der Zeichenfolge entfernt.
Python3
#input empty with and without spaces string> string1> => ''> string2> => ' '> > if> string1> and> string1.strip():> > print> (f> 'string, string1 = '{string1}', with no spaces is not empty'> )> else> :> > print> (f> 'string, string1 = '{string1}', with no spaces is empty'> )> > if> string2> and> string2.strip():> > print> (f> 'string, string2 = '{string2}', with spaces is not empty'> )> else> :> > print> (f> 'string, string2 = '{string2}', with spaces is empty'> )> |
>
>
Ausgabe
string, string1 = '', with no spaces is empty string, string2 = ' ', with spaces is empty>
Python-Prüfung, ob String ist mit der Funktion all() leer
Der Rückgabewert der all()-Funktion erfordert ein Iterable als Eingabe. Wenn das Iterable leer ist oder alle seine Mitglieder wahr sind, ist der Wert wahr. Die Funktion all() kann feststellen, ob eine Zeichenfolge leer ist oder ob alle ihre Zeichen falsch sind (leere Zeichenfolge), indem sie die Zeichenfolge als iterierbare Zeichenfolge empfängt.
Python3
Ex des Benutzernamens
string> => ''> if> all> (char.isspace()> for> char> in> string):> > print> (> 'The string is empty'> )> else> :> > print> (> 'The string is not empty'> )> |
>
>
Ausgabe
The string is empty>
Der Bool-Ansatz zum Überprüfen, ob eine Zeichenfolge leer ist oder nicht, hat einen Zeitkomplexität von O(1), da es lediglich den Wahrheitswert der Zeichenfolge überprüft, was eine konstante Zeitoperation ist. Der Hilfsraum i s auch O(1), da es nur eine einzige boolesche Variable benötigt, um den Wahrheitswert der Zeichenfolge zu speichern.
Python prüft leere Zeichenfolge mit Try/Except
Mithilfe eines Try-Except-Blocks können Sie in Python feststellen, ob eine Zeichenfolge leer ist. Sie können bestimmte Ausnahmen, die während der Ausführung Ihres Codes auftreten könnten, abfangen und behandeln, indem Sie den try-exclusive-Block verwenden. Sie können Situationen, in denen Sie einen wahrscheinlichen Fehler erwarten, z. B. wenn Sie nach einer leeren Zeichenfolge suchen, mithilfe eines Try-Except-Blocks elegant verwalten.
Python3
# Initialize an empty string> string> => ''> try> :> > # Try to access the first character of the string> > string[> 0> ]> > # If no exception is raised, print 'The string is not empty.'> > print> (> 'The string is not empty.'> )> except> :> > # If a ValueError exception is raised, print 'The string is empty.'> > print> (> 'The string is empty.'> )> |
>
>
Ausgabe
The string is empty>
Komplexitätsanalyse:
Dieser Code hat eine konstante Zeitkomplexität von O(1), da er nur versucht, auf das erste Zeichen der Zeichenfolge zuzugreifen, was unabhängig von der Länge der Zeichenfolge dieselbe Zeit in Anspruch nimmt.