Cómo verificar si la lista está vacía en Python

     

    Introducción

    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.

    Python 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:

    if 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.

     

    Etiquetas:

    Deja una respuesta

    Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *