numbers = [1, 2, 3, 4, 5]
squares = [x ** 2 for x in numbers]
print(f"Cuadrados: {squares}")Cuadrados: [1, 4, 9, 16, 25]
Una Comprehension List es una forma concisa de crear listas en Python, pues permite generar listas nuevas transformando cada elemento de una colección existente o creando elementos a partir de un rango. La sintaxis es compacta y directa, lo que facilita la comprensión del propósito de tu código de un vistazo.
[expresión for elemento in iterable if condición]
Que se traduce a: “Crea una nueva lista evaluando nueva_expresión para cada elemento en el iterable.”
Ejemplos:
Dada una lista de números [1, 2, 3, 4, 5], crea una nueva lista que contenga el doble de cada número usando una List Comprehension.
numbers = [1, 2, 3, 4, 5]
squares = [x ** 2 for x in numbers]
print(f"Cuadrados: {squares}")Cuadrados: [1, 4, 9, 16, 25]
Tienes una lista de palabras [“sol”, “mar”, “montaña”, “rio”, “estrella”] y quieres obtener una nueva lista con las palabras que tengan más de 3 letras y estén en mayúsculas.
palabras = ["sol", "mar", "montaña", "rio", "estrella"]
palabras_mod = [x.upper() for x in palabras if len(x) > 3]
print(f"Las palabras moficadas son: {palabras_mod}")Las palabras moficadas son: ['MONTAÑA', 'ESTRELLA']
Dada una lista de listas (una matriz), calcula la matriz traspuesta utilizando una List Comprehension anidada.
matriz = [
[1, 2, 3],
[4, 5, 6],
[7, 8, 9]
]
transpuesta_comprehension = [[fila[i] for fila in matriz] for i in range(len(matriz[0]))]
print("Transpuesta con List Comprehension:", transpuesta_comprehension)Transpuesta con List Comprehension: [[1, 4, 7], [2, 5, 8], [3, 6, 9]]