Introducción
Contenido
Las listas son una de las cuatro estructuras de datos más utilizadas proporcionadas por Python. Su funcionalidad, extensibilidad y facilidad de uso lo hacen útil para implementar varios tipos de funcionalidades.
Las listas de Python tienen algunas características interesantes:
- Mutabilidad – lo que significa que puede cambiar, lo que significa que nos permite agregar y eliminar entradas fácilmente. Esta es la principal diferencia entre las listas de Python y las tuplas
- Iterabilidad – lo que significa que podemos recorrerlo en iteración (recorrer todos los elementos de la lista en orden)
El principal atributo en el que nos centraremos es la iteración. Una parte importante cuando se trata de un objeto iterable, en este caso una lista, es verificar si hay algo para iterar. Si no se maneja correctamente, esto puede generar muchos errores no deseados.
Te puede interesar:Validación de forma de matraz con Flask-WTFPython proporciona varias formas de verificar si nuestra lista está vacía o no, algunas implícitas y otras explícitas, y en este artículo, veremos cómo verificar si una lista de Python está vacía.
- Utilizando el
len()
Función - Utilizando
len()
Con un operador de comparación - Comparación con la lista vacía
- Estilo recomendado de Pep-8 (más popular y recomendado)
- Utilizando el
bool()
Función
Utilizando len()
Función
Una de las técnicas es utilizar el len()
función para comprobar si nuestra lista está vacía o no:
py_list = []
"""
Here len() returns 0, which is
implicitly converted to false
"""
if len(py_list):
print('The list is not empty')
else:
print('T list is empty')
Salida
List is empty
Cuando len(py_list)
ejecuta produce cero, que luego se convierte implícitamente en el valor booleano de False
. Por lo tanto, en caso de una lista vacía, el programa será redirigido al bloque else.
Aunque este método parece simple, no es tan intuitivo para principiantes.
Usando len () con el operador de comparación
Esta técnica es similar a la anterior pero es más explícita y fácil de entender. Es por eso que aquellos que son nuevos en Python o la codificación en sí, generalmente lo consideran más intuitivo:
if len(py_list) == 0:
print('List is empty')
else:
print('List not empty')
En el código de arriba, len(py_list) == 0
será verdadero si la lista está vacía y será redirigido al bloque else. Esto también le permite establecer otros valores, en lugar de depender de 0
siendo convertido como False
. Todos los demás valores positivos se convierten a True
.
Comparación con lista vacía
Este método también es muy simple y funciona bien para principiantes, ya que implica comparar con una lista vacía:
Te puede interesar:PNL simple en Python con TextBlob: detección de N-gramosif py_list == []:
print('List is empty')
else:
print('List is not empty')
Aquí nuevamente, estamos usando la operación de comparación para comparar una lista con otra – estoy vacía, y si ambas están vacías, if
bloque se ejecutará.
Estilo recomendado de Pep-8
#PEP-8 recommended style
if py_list:
print('List is not empty')
if not py_list:
print('List empty')
Para esto, echemos un vistazo a Prueba de valor de verdad. Los documentos oficiales establecen que:
Estos son la mayoría de los objetos integrados que se consideran falsos:
- constantes definidas como falsas: Ninguna y Falsa.
- cero de cualquier tipo numérico: 0, 0.0, 0j, Decimal (0), Fraction (0, 1)
- secuencias y colecciones vacías: », (), [], {}, conjunto (), rango (0)
Como una lista vacía es de hecho solo una colección vacía, se convertirá a un valor booleano de False
. Por tanto, si py_list
está vacío, se convertirá en False
.
La segunda afirmación es bastante similar, excepto not
invertirá una condición falsa a una verdadera. Este enfoque es muy similar al if(len(list))
Acercarse.
Este es el enfoque preferido, ya que es la solución más limpia y más corta que existe.
Usando la función bool ()
También podemos utilizar el bool()
función para verificar que una lista esté vacía:
#As truth value testing says [] braces denotes false
if bool(py_list):
print('List is not empty')
else:
print('List is empty')
Esta es básicamente una prueba de valor de verdad implementada manualmente. Entonces, si la lista no está vacía, la función regresará True
y si se ejecutará el bloque.
Este enfoque es menos común ya que podemos lograr los resultados deseados incluso sin usar bool()
, pero no es malo saber cómo funciona Python bajo el capó.
Conclusión
Este artículo trataba sobre las formas de verificar si nuestra lista de Python está vacía o no. Comenzamos explorando diferentes técnicas y finalmente analizando algunos parámetros que podemos usar para hacer nuestro juicio sobre qué técnica nos puede funcionar.
No puedo decir que este sea el final, ya que las nuevas actualizaciones de Python pueden dar lugar a estilos de codificación nuevos y más mejorados. Así que es mejor seguir explorando y seguir aprendiendo.
Te puede interesar:Cómo fusionar dos diccionarios en Python