Python list comprehension
List comprehension se refiere a la sintaxis corta usada en python para generar una lista a partir de otra lista existente.
Sintáxis básica
En este ejemplo vamos a contar con una lista de numeros y vamos a retornar otra lista con esos mismos numeros al cuadrado.
items = [1,2,3,4,5,6]
items2 = [n ** 2 for n in items]
print(items2)
# [1, 4, 9, 16, 24, 36]
Con condicionales
Usando list comprehension tambien podemos aplicar condiciones a los elementos de la lista, en el ejemplo vamos a quitar de la lista las palabras que contengan la letra "a".
words = ["foo", "bar", "baz"]
result = [w for w in words if not "a" in w]
print(result)
# ["foo"]
Anidado
En este ejemplo vamos a ver como se puede recorrer una lista de listas, para generar un array plano con todos los elementos.
list_of_list = [[1,2,3],[4,5,6],[7,8]]
flatten = [y for x in list_of_list for y in x]
print(flatten)
# [1, 2, 3, 4, 5, 6, 7, 8]




