logo

Programa Python per comprovar si String està buida o no

Les cadenes de Python són immutables i tenen un maneig més complex quan es discuteixen les seves operacions. Tingueu en compte que una cadena amb espais és en realitat una cadena buida però té una mida diferent de zero. En aquest article també es parla d'aquest problema i la solució. Vegem diferents mètodes Comproveu si String està buida Python .

Exemple

  Input:  [' ']   Output:   Yes   Explanation:   In this, We are checking if the string is empty or not.>

Comproveu la cadena buida a Python

Aquí hi ha diferents mètodes per comprovar si una cadena està buida o no a Python.



  • Utilitzant len()
  • Utilitzant not()
  • Utilitzant not + str.strip()
  • Utilitzant not + str.isspace
  • Ús de la comprensió de llistes
  • Utilitzant Bool
  • Ús de mètodes de tira
  • Ús i Operador + funció strip().
  • Utilitzant la funció all().
  • Utilitzant try/except

Python Check String Buit amb Len()

Utilitzant només () és el mètode més genèric per comprovar les cadenes de longitud zero. Tot i que ignora el fet que una cadena amb només espais també s'hauria de considerar pràcticament una cadena buida encara que sigui diferent de zero.

Python 3




# 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'>)>

abstracció en java
>

>

Sortida

The zero length string without spaces is empty ? : Yes The zero length string with just spaces is empty ? : No>

Python Check String Buit utilitzant Not()

L'operador not també pot realitzar la tasca similar a len() i comprova la cadena de longitud 0, però igual que l'anterior, considera que la cadena amb només espais també no és buida, cosa que pràcticament no hauria de ser certa.

Python 3




# 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'>)>

>

>

Sortida

The zero length string without spaces is empty ? : Yes The zero length string with just spaces is empty ? : No>

Cadena buida de Python en sing not + str.strip()

El problema d'una cadena buida + de longitud zero es pot eliminar possiblement utilitzant strip(), strip() retorna veritable si es troba amb els espais, per tant, comprovar-ho pot resoldre el problema de comprovar si hi ha una cadena purament buida.

Python 3




# 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'>)>

>

>

Sortida

The zero length string without spaces is empty ? : Yes The zero length string with just spaces is empty ? : Yes>

Comproveu la cadena buida Python u sing not + str.isspace

Funciona de la mateixa manera que el mètode anterior i comprova si hi ha espais a la cadena. Aquest mètode és més eficient perquè strip() també requereix realitzar l'operació de strip, que requereix càrregues de càlcul si no. d'espais són de bon nombre.

Python 3




# 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'>)>

>

>

Sortida

The zero length string without spaces is empty ? : Yes The zero length string with just spaces is empty ? : Yes>

Comproveu si String està buida o no utilitza la comprensió de llista

Aquest enfocament implica analitzar el text en una llista de caràcters mitjançant la comprensió de la llista, i després determinar si la llista està buida. Podem avaluar si la cadena està buida o no avaluant la veracitat de la llista.

Python 3




string>=>''> x>=>[>'no'> if> len>(string)>>0> else> 'yes'>]> print>(x)>

>

>

Sortida

['yes']>

Comproveu la cadena buida de Python o no feu servir Bool

Un enfocament és utilitzar el funció bool . La funció bool retorna False per a les cadenes buides i True per a les cadenes no buides. Aquí teniu un exemple d'ús de la funció bool per comprovar si una cadena està buida o no.

Python 3




# 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>

>

>

Sortida

The string is empty.>

També podeu utilitzar la funció bool per comprovar si una cadena està buida o no després d'eliminar els espais en blanc inicials o finals mitjançant el mètode strip:

Python 3




# 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>

escàner en java
>

>

Sortida

The string is empty.>

Python Comproveu si String està buit mitjançant el mètode Strip

Aquí farem servir Python mètodes strip(). per comprovar que la cadena està buida o no.

Python 3




#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'>)>

>

>

Sortida

string, string1 = '', with no spaces is empty string, string2 = ' ', with spaces is empty>

Comproveu que la cadena està buida o no s'utilitza i la funció Operador + strip().

En aquest enfocament, l'operador i s'utilitza per combinar dues proves: determinar si la cadena no és None i determinar si la versió eliminada de la cadena està buida. La funció strip() elimina els caràcters d'espai en blanc inicials i finals de la cadena.

Python 3




#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'>)>

>

>

Sortida

string, string1 = '', with no spaces is empty string, string2 = ' ', with spaces is empty>

Python Comproveu si String està buit utilitzant la funció all().

El valor de retorn de la funció all() requereix un Iterable com a entrada. Si l'iterable està buit o tots els seus membres són certs, el valor és cert. La funció all() pot determinar si una cadena està buida o si tots els seus caràcters són falsos (cadena buida) en rebre la cadena com un iterable de caràcters.

Python 3




afegint una cadena en java

string>=> ''> if> all>(char.isspace()>for> char>in> string):> >print>(>'The string is empty'>)> else>:> >print>(>'The string is not empty'>)>

>

>

Sortida

The string is empty>

L'enfocament bool per comprovar si una cadena està buida o no té un complexitat temporal de O(1), ja que simplement comprova el valor de veritat de la cadena, que és una operació de temps constant. El Espai auxiliar i També és O(1) ja que només requereix una única variable booleana per emmagatzemar el valor de veritat de la cadena.

Python Comprova la cadena buida utilitzant Try/Except

Utilitzant un bloc try-except, podeu determinar a Python si una cadena està buida. Podeu detectar i fer front a excepcions específiques que podrien sorgir mentre s'executa el vostre codi mitjançant el bloc try-except. Podeu gestionar amb gràcia les circumstàncies quan anticipeu un error probable, com ara quan comproveu si hi ha una cadena buida, utilitzant un bloc try-except.

Python 3




# 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.'>)>

>

>

Sortida

The string is empty>

Anàlisi de complexitat:
Aquest codi té una complexitat de temps constant de O(1) perquè només intenta accedir al primer caràcter de la cadena, que triga el mateix temps independentment de la longitud de la cadena.