¿Cómo verificar si el texto está “vacío” (espacios, tabulaciones, nuevas líneas) en Python?

¿Cómo puedo probar si la cadena está vacía en Python?

Por ejemplo,

"" está vacío, por lo que está

"" , así es

"" , etc.

 yourString.isspace() 

“Devuelve verdadero si solo hay caracteres de espacio en blanco en la cadena y hay al menos un carácter, de lo contrario es falso”.

Combina eso con un caso especial para manejar la cadena vacía.

Alternativamente, podrías usar

 strippedString = yourString.strip() 

Y luego verifica si strippedString está vacío.

 >>> tests = ['foo', ' ', '\r\n\t', '', None] >>> [bool(not s or s.isspace()) for s in tests] [False, True, True, True, True] >>> 

isspace

Quieres usar el método isspace()

str. isspace ()

Devuelva verdadero si solo hay caracteres de espacio en blanco en la cadena y hay al menos un carácter, de lo contrario es falso.

Eso está definido en cada objeto de cadena. Aquí es un ejemplo de uso para su caso de uso específico:

 if aStr and (not aStr.isspace()): print aStr 

para aquellos que esperan un comportamiento como el apache StringUtils.isBlank o Guava Strings.isNullOrEmpty :

 if mystring and mystring.strip(): print "not blank string" else: print "blank string" 

Verifique la longitud de la lista dada por el método split ().

 if len(your_string.split()==0: print("yes") 

O Compare la salida del método strip () con nulo.

 if your_string.strip() == '': print("yes") 

Aquí hay una respuesta que debería funcionar en todos los casos:

 def is_empty(s): "Check whether a string is empty" return not s or not s.strip() 

Si la variable es Ninguna, se detendrá en not s y no se evaluará más (ya que not None == True ). Al parecer, el método strip() se ocupa de los casos habituales de tab, newline, etc.

Supongo que en su escenario, una cadena vacía es una cadena que está realmente vacía o que contiene todo el espacio en blanco.

 if(str.strip()): print("string is not empty") else: print("string is empty") 

Tenga en cuenta que esto no se comprueba para None

Utilicé lo siguiente:

 if str and not str.isspace(): print('not null and not empty nor whitespace') else: print('null or empty or whitespace') 

Para comprobar si una cadena es solo un espacio o una nueva línea.

Usa este código simple

 mystr = " \n \r \t " if not mystr.strip(): # The String Is Only Spaces! print("\n[!] Invalid String !!!") exit(1) mystr = mystr.strip() print("\n[*] Your String Is: "+mystr)