Lista, conjunto, comprensiones de diccionario en Python
Aprendamos sobre las comprensiones de lista, diccionario, conjunto en python.
Comprensiones en Python:
La comprensión consiste en una sola expresión seguida de al menos una cláusula for
y cero o más cláusulas for
o if
.
Hay tres comprensiones en Python.
Comprensiones de listas:
Las comprensiones de listas proporcionan una forma concisa de crear listas. Las aplicaciones comunes son hacer nuevas listas donde cada elemento es el resultado de algunas operaciones aplicadas a cada miembro de otra secuencia o iterable o crear una subsecuencia de aquellos elementos que satisfacen una determinada condición. – python docs
Sintaxis:
La expresión puede ser cualquier expresión arbitraria, expresiones complejas, tupla, funciones anidadas u otra comprensión de lista.
Esto es equivalente a
for item in iterable:
if conditional:
expression
Tipo de retorno:
List
Usando la comprensión de lista:
Una comprensión de lista consiste en paréntesis que contienen una expresión seguida de una cláusula
for
, luego cero o más cláusulas for
o if
. El resultado será una nueva lista resultante de evaluar la expresión en el contexto de las cláusulas for
y if
que le siguen.
Comprensión de listas vs bucle for.
Al utilizar la Comprensión de la Lista, es más concisa y legible en comparación con for loop.
Encontrar el cuadrado de los números utilizando la Comprensión de la Lista vs bucle for:
Comprensión de la Lista vs filtro.
Devuelve un iterador de aquellos elementos del iterable para los que la función devuelve verdadero. El iterable puede ser una secuencia, un contenedor que admite la iteración o un iterador
Búsqueda de números pares mediante comprensión de listas vs filter():
3.Comprensión de listas vs map.
map:
Devuelve un iterador que aplica una función a cada elemento del iterable, arrojando los resultados.
Hallazgo del cuadrado de los números usando Comprensión de Listas vs map():
Bucles anidados en Comprensión de Listas.
Comprensión de Listas puede contener una o más cláusulas for.
Ejemplo 1: Aplanar una lista utilizando la Comprensión de Listas con dos cláusulas ‘for’:
5.Condición if múltiple en la Comprensión de Listas.
La Comprensión de Listas puede contener cero o más cláusulas if.
Ejemplo: Encontrar números que son divisibles por 2 y 3.
La expresión puede ser tupla en Comprensión de lista.
Podemos mencionar la expresión como tupla en una comprensión de lista. Debe escribirse entre paréntesis. De lo contrario, se producirá un error. El resultado será una lista de tuplas.
Ejemplo 1: Creación de una lista de tuplas utilizando la comprensión de listas con dos cláusulas ‘for’:
Si la expresión es una tupla y no está encerrada entre paréntesis, lanzará SyntaxError.
Ejemplo 2:Uso de la función zip() en la comprensión de listas:
La comprensión de listas puede utilizarse para llamar a un método en cada elemento.
Ejemplo 1: Llamar al método strip() en cada elemento de la lista. Se utiliza para quitar los espacios en blanco.
Ejemplo 2: Llamar al método upper() en cada elemento de la lista.
La comprensión de la lista puede contener expresiones complejas y funciones anidadas.
Ejemplo 1:En el siguiente ejemplo, en la expresión estamos utilizando el método strip y la función int.
Ejemplo 2: En el siguiente ejemplo, en la expresión, estamos utilizando abs() y la función str().
Comprensión de lista anidada.
La expresión en una comprensión de lista puede incluir otra comprensión de lista también.
Ejemplo: La primera comprensión de lista dada como expresión devolverá una lista de números pares del 0 al 10. La comprensión de lista anidada devolverá esa expresión (lista de números pares del 0 al 10) tres veces(range(3)).