Comprensión de listas de Python con ejemplos [2022]

Publicado: 2021-06-29

Las secuencias se pueden construir de forma concisa o corta a partir de secuencias ya definidas mediante el uso de comprensiones en python. Las secuencias incluyen estructuras de datos como lista, diccionario, conjunto, etc. Las siguientes comprensiones son compatibles con python:

  • Lista de comprensiones
  • Comprensiones de diccionario
  • Establecer comprensiones
  • Comprensiones del generador

Este artículo se centrará en las comprensiones de listas en python y sus usos. Al igual que el conjunto de comprensión de listas , también se pueden crear comprensiones de diccionario en python .

Tabla de contenido

¿Qué es la comprensión de listas?

Python es un lenguaje de programación ampliamente aceptado que brinda al usuario la capacidad de escribir código fácil y elegante. La comprensión de listas es una de las características distintivas de python que se utiliza para crear nuevas listas. Mediante el uso de una sola línea de código, se puede crear la funcionalidad.

No es necesario que una condición if deba estar contenida en una lista de comprensión, sin embargo, múltiples formas pueden estar contenidas en la lista de comprensión.

Por lo tanto, liste las comprensiones

  • Es una forma elegante de definir y crear una lista basada en listas existentes.
  • En comparación con las funciones normales para crear listas y bucles, las listas de comprensión son mucho más compactas y rápidas.
  • Para que el código sea más fácil de usar, se debe evitar escribir comprensiones de listas largas.
  • Al usar un bucle for, las listas de comprensión se pueden reescribir.

¿Cómo crear una lista?

Existen varias formas de crear listas en el lenguaje de programación python.

1. para bucles

El bucle for se puede utilizar para crear una lista. Se deben seguir tres pasos para crear la lista de elementos.

  • Se va a instanciar una lista vacía.
  • El bucle se usa sobre elementos que se pueden iterar.
  • Cada elemento se añade al final de la lista .

2. Mapa() Objetos

Un enfoque alternativo, es decir, map(), se basa en la programación funcional. Un objeto se crea cuando una función y un elemento iterables se pasan a map(). La salida que se generaría a partir de la ejecución del elemento iterable a través de la función proporcionada estará contenida en el objeto.

3. Comprensiones de listas

Otra forma de hacer una lista es mediante el uso de la comprensión de listas. El bucle for se puede reescribir en un código que consta de una sola línea.

En comparación con los métodos anteriores en los que primero se crea una lista vacía y luego se agregan los elementos al final, en este caso, simplemente ocurre en una sola línea. La lista y los contenidos simplemente se definen al mismo tiempo. El código utilizado es.

Hay tres elementos en cada comprensión de la lista de Python .

  • Expresión: Al ser un miembro, la expresión es una llamada a un método o cualquier expresión en la que se devuelva un valor.
  • Miembro: Es un valor o un objeto en la lista iterable. El valor de un miembro es 1 en el ejemplo anterior.
  • Iterable: es una lista, secuencia, conjunto u otros objetos cuyos elementos se pueden devolver uno a la vez. Iterable es range(10) en el ejemplo anterior.

La comprensión de listas de Python puede funcionar bien incluso en lugares que usan map(). El ejemplo anterior se puede reescribir como.

La diferencia en el uso de map() y comprensión de lista es que se devuelve una lista en caso de comprensión de lista, mientras que se devuelve un objeto de mapa en caso de map().

Declaraciones condicionales

Las listas existentes se pueden modificar mediante el uso de declaraciones condicionales en las listas de comprensión. Ya sea lista o tuplas, ambas pueden modificarse a través de comprensiones de lista de python.

1. Usando la condición de si

La condición de 'si' se puede usar en la comprensión de listas a través del siguiente código.

Ejecutar el programa anterior genera la salida: [0, 2, 4, 6, 8, 10, 12, 14, 16, 18]

2. Usando la condición de IF anidado

La lista de comprensión realiza las siguientes comprobaciones:

  • ¿El elemento y es divisible por 2 o por 5?
  • Si ambas condiciones son satisfechas por y, entonces se agrega a num_list.

Lea también: Fascinantes aplicaciones de Python en el mundo real

3. Usando if-else

En el ejemplo que se muestra arriba, los diez números, es decir, del 0 al 10, se verifican mediante listas de comprensión.

4. Uso de bucles anidados

Salida generada: [[1, 4], [2, 5], [3, 6], [4, 8]]

La transposición de la matriz se calcula mediante el uso de dos bucles.

  • En comparación con los bucles anidados normales, los bucles anidados contenidos en las listas por comprensión funcionan de manera diferente a los otros bucles anidados.

Sintaxis

La sintaxis básica para la comprensión de la lista de python es

[expresión para el elemento de la lista]

Supongamos que tenemos una cadena y queremos iterarla mediante el uso de la comprensión de listas.

En el ejemplo anterior, se puede notar que el 'humano' se usa como una cadena, no como una lista. Aquí radica el poder de las comprensiones de listas de Python . Ya sea una cadena o una tupla, la lista por comprensión puede identificarla y trabajar sobre ella como una lista.

Lo mismo se puede llevar a cabo utilizando los bucles. Pero, los bucles no pueden seguir la sintaxis de comprensión de listas.

Conclusión

En este artículo, aprendiste brevemente sobre la comprensión de listas en python y su creación de varias maneras. Con el conocimiento de esta comprensión, se pueden probar otros códigos para sus tareas. El concepto de python está recibiendo mucha atención, pero será más valioso si puede usar sus datos de manera efectiva. Esto se puede llevar a cabo escribiendo códigos claros y concisos.

Por lo tanto, si está dispuesto a aprender sobre python y su implementación en la minería de datos, puede consultar el curso del Programa Ejecutivo PG en Ciencia de Datos que ofrece upGrad. El curso de 12 meses está diseñado para profesionales principiantes (tanto hombres como mujeres) entre 21 y 45 años de edad y es el primer PGP certificado por NASSCOM de la India. Con más de 400 horas de aprendizaje y experiencia práctica de más de 14 herramientas e idiomas, el curso está diseñado especialmente para cumplir tus sueños. Las consultas relacionadas con el curso son bienvenidas.

¿Cuándo se prefiere una lista de Python para almacenar datos?

La lista de Python se considera la mejor estructura de datos para almacenar los datos en los siguientes escenarios:
1. Se puede usar una lista para almacenar varios valores con diferentes tipos de datos y se puede acceder a ella solo por sus respectivos índices.
2. Cuando necesite realizar operaciones matemáticas sobre los elementos, se puede utilizar una lista, ya que le permite operar matemáticamente los elementos directamente.
3. Dado que se puede cambiar el tamaño de una lista, se puede usar para almacenar los datos cuando no está seguro de la cantidad de elementos que se almacenarán.
4. Los elementos de la lista son fácilmente modificables y también pueden almacenar elementos duplicados, a diferencia del conjunto y el diccionario.

¿Cuáles son las ventajas de la comprensión de listas sobre el bucle?

La comprensión de listas proporciona varias ventajas significativas sobre el bucle. A continuación se presentan algunas de las ventajas de la comprensión de listas:
1. La comprensión de la lista es mucho más rápida y compacta que el ciclo, ya que primero recopila todos los elementos y los inserta todos juntos a la vez.
2. Lo mismo que hace un bucle en un bloque se puede hacer en una sola línea utilizando una lista de comprensión, lo que hace que el código sea más limpio y fácil de usar.
3. La resolución de una matriz en un vector y la filtración de listas son algunos de los mejores ejemplos en los que se puede ver que las comprensiones de listas superan a un bucle.

Indique las diferentes formas de crear una lista.

Una lista de Python se puede crear de varias maneras que se mencionan a continuación:
1. Uso de bucles for : un bucle for es la forma más elemental de crear una lista. Se puede crear una lista utilizando un bucle for de tres formas sencillas:
un. Crea una lista vacía.
B. Iterar sobre todos los elementos que se van a insertar.
C. Agregue cada elemento en la lista usando la función append().
2. Usando map(): La función map() en Python se puede usar alternativamente para crear una lista. Esta función acepta dos parámetros:
un. Función : la función a la que el mapa pasa cada iterable.
B. Iterable: El elemento o el iterable a mapear.
3. Uso de listas de comprensión : este método es el más optimizado de los tres métodos. Mientras que en los métodos anteriores se debe crear primero una lista vacía, las comprensiones de lista le permiten insertar todos los elementos en una lista usando una sola línea.