5 Técnicas de List Comprehension en Python Que Deberías Conocer

Las list comprehensions son una de las características más poderosas y elegantes de Python. Si bien la sintaxis básica es sencilla, hay algunos patrones avanzados que pueden hacer tu código más eficiente y legible. Veamos 5 técnicas que todo desarrollador Python debería conocer.

1. Filtrado con Condicionales

La forma más básica pero potente de usar list comprehensions es con filtros condicionales:

# Tradicional
numeros_pares = []
for num in range(10):
    if num % 2 == 0:
        numeros_pares.append(num)

# Con list comprehension
numeros_pares = [num for num in range(10) if num % 2 == 0]
# Resultado: [0, 2, 4, 6, 8]

2. Múltiples Condiciones

Podemos combinar múltiples condiciones usando operadores lógicos:

# Números que son pares Y divisibles por 3
numeros = [num for num in range(30) if num % 2 == 0 and num % 3 == 0]
# Resultado: [0, 6, 12, 18, 24]

3. Comprehensions Anidadas

Las comprehensions pueden contener múltiples bucles:

matriz = [[i+j for j in range(3)] for i in range(0, 9, 3)]
# Resultado: [[0, 1, 2], [3, 4, 5], [6, 7, 8]]

4. Transformaciones con Condicionales

Podemos usar el operador ternario para transformaciones condicionales:

numeros = [1, 2, 3, 4, 5]
transformados = ['par' if n % 2 == 0 else 'impar' for n in numeros]
# Resultado: ['impar', 'par', 'impar', 'par', 'impar']

5. Trabajando con Diccionarios

Las list comprehensions también son útiles para transformar diccionarios:

precios = {'manzana': 0.5, 'banana': 0.25, 'naranja': 0.75}
frutas_caras = {k: v for k, v in precios.items() if v > 0.3}
# Resultado: {'manzana': 0.5, 'naranja': 0.75}

Consideraciones de Rendimiento

Si bien las list comprehensions son elegantes, no siempre son la mejor opción:

  • Son excelentes para listas pequeñas y medianas

  • Para operaciones muy complejas, un bucle tradicional puede ser más legible

  • Para conjuntos de datos muy grandes, considera usar generadores en su lugar

  • Evita anidar más de dos niveles de comprehension

Conclusión

Las list comprehensions son una herramienta poderosa en Python que puede hacer tu código más conciso y elegante. Sin embargo, como con cualquier herramienta, es importante usarlas con criterio y considerar la legibilidad y el rendimiento.

Recursos Adicionales


¿Te resultó útil este artículo? ¡No dudes en dejar tus comentarios y compartir tus propias experiencias con list comprehensions!

Tags: #Python #Programming #Coding #DataStructures #PythonTips

0
Subscribe to my newsletter

Read articles from Joaquín Gutiérrez directly inside your inbox. Subscribe to the newsletter, and don't miss out.

Written by

Joaquín Gutiérrez
Joaquín Gutiérrez