Echemos un vistazo a varios métodos para verificar si una cadena está vacía o no.
Método # 1: usar len()
Usar len ()
es el método más común para validar una cadena de longitud cero. Aunque ignora el hecho de que una línea con solo espacios también debe considerarse prácticamente una línea vacía, incluso si no es cero.
# Código de demostración de Python3
# comprobar si la línea está vacía
# usando len ()
# cadena de inicialización
test_str1
print
(
"The ¿La cadena de longitud cero sin espacios está vacía?: "
, end
=
" ")
print
(
"Sí"
# imprime no
print
(
"¿La cadena de longitud cero con solo espacios está vacía?: "
, end
=
" ")
if
else
:
Salida:
¿La cadena de longitud cero sin espacios está vacía?: Sí ¿La cadena de longitud cero con solo espacios está vacía?: No
Método # 2: Usar not
La instrucción not
también puede realizar una tarea similar a len()
y comprueba una stri ng de longitud 0, pero como arriba, asume que una cadena que contiene solo espacios tampoco está vacía, lo que prácticamente no debería ser cierto.
# Código de demostración de Python3
# comprobar si la línea está vacía
# no usar
# cadena de inicialización
test_str1
=
" "
# comprobar, e Si la cadena está vacía
print
(
"La cadena de longitud cero sin espacios es ¿vacío?: "
, end
=
" ")
)
else
:
(
"¿La cadena de longitud cero con solo espacios está vacía?:"
, end
=
"")
si
print
(
"Sí "
)
else
:
)
Salida:
¿La cadena de longitud cero sin espacios está vacía?: Sí ¿La cadena de longitud cero con solo espacios está vacía?: No
Método n.° 3: Usar not
+ str.strip()
El problema de cadena vacía + longitud cero podría eliminarse con strip()
, strip ()
devuelve verdadero si encuentra espacios, por lo que verificar eso podría solucionar el problema busca una línea puramente en blanco.
Salir:
¿La cadena de longitud cero sin espacios está vacía?: Sí ¿La cadena de longitud cero con solo espacios está vacía?: Sí
Método # 4: Usar not
+ str.isspace
Funciona de manera similar al anterior método y comprueba si hay espacios en la cadena. Este método es más eficiente porque strip ()
requiere una operación de eliminación, que toma la carga computacional si no lo hace. los espacios son un buen número.
# Código de demostración de Python 3
# verificar si la línea está vacía
# usando not + isspace ()
# cadena de inicialización
test_str1
=
"" < /código>
# comprobar si la cadena está vacía
imprimir
(
"¿La cadena de longitud cero sin espacios está vacía?: "
, end
print
(
"Sí"
print
(
"No"
(
"¿La cadena de longitud cero con solo espacios está vacía?: "
, fin
(
not
(test_str2
else
:
< clase de código = "palabra clave"> print
Salida:
¿La cadena de longitud cero sin espacios está vacía?: Sí ¿La cadena de longitud cero con solo espacios está vacía?: Sí