← Lumbre

Programación con Python para Datos · 2.º Comprensiones y funciones lambda

← Volver a todos los contenidos
Portada de Comprensiones y funciones lambda

Comprensiones y funciones lambda

✦ Las comprensiones construyen listas, diccionarios y conjuntos declarativamente; las lambda son funciones exprés · Programación con Python para Datos · Programación · en 3 minutos

Roadwise Consulting

Firmado y verificado · Fernando Castro

Objetivo: Escribir código Python expresivo con comprensiones y funciones lambda, y saber cuándo favorecen o dañan la legibilidad.

3 min 18–30 años
Autoevaluación
Más
Comprensiones y funciones lambda

Herramientas de la lección

◉ Entrar a La Matrix Sorpréndeme

Sobre este contenido

Ir a

Volver a Objetos Cursos Explorar Mi cuenta Salir del modo estudio

Comprensiones y funciones lambda

Ilustracion de Python para datos: DataFrame, graficas y arrays de NumPy.
Python para ciencia de datos: NumPy, pandas y manipulacion de datos.

Mapa conceptual

  • Python para Datos
    • Entorno
      • pip
      • venv
      • Reproducibilidad
    • Funcional
      • Comprensiones
      • Lambda
      • map filter
    • Calidad
      • try except
      • pytest
      • Asserts
    • NumPy
      • Arrays
      • Broadcasting
      • Indexacion
    • Pandas
      • DataFrame
      • Groupby
      • Merge Join

Comprensión de lista

Una comprensión construye una lista aplicando una expresión a cada elemento de un iterable, con opción de filtrar. Es la forma idiomática de mapear y filtrar sin escribir el bucle y el append a mano.

Dict y set

  • Comprensión de diccionario: pares clave-valor generados en línea.
  • Comprensión de conjunto: igual que la de lista, pero produce un set sin duplicados.

Funciones lambda

Una lambda define una función anónima de una sola expresión, usable donde hace falta un objeto invocable sin declararla con def: típico al ordenar con clave o al pasar una transformación breve.

Construcciones declarativas que reemplazan bucles manuales.
EstructuraEjemplo (idea)Devuelve
List comprehension[x*x para x en nums]lista de cuadrados
Con filtro[x para x en nums si x 0]solo los positivos
Dict comprehensionk: len(k) para k en keysdiccionario de longitudes
Lambdalambda p: p[1] para ordenarfunción clave exprés

¿Cuál es la ventaja principal de una comprensión frente a un bucle con append?

Cuándo duele

Una comprensión anidada con dos filtros y una expresión larga es difícil de leer: si necesitas más de una o dos líneas lógicas, mejor un bucle normal. La legibilidad manda: la concisión no es un trofeo.

Lambda o def

  • Lambda: una expresión corta, sin ramas ni sentencias, reutilizada en el mismo lugar.
  • def: cuando hay varias líneas, condiciones o el comportamiento merece nombre propio.

map y filter

map aplica una función a cada elemento; filter conserva los que cumplen un predicado. En Python, muchas veces una comprensión es más clara que combinar map y filter. Úsalos cuando encajen con una función ya existente.

Una lambda puede contener varias sentencias y devoluciones con return.

Errores frecuentes

  • Comprender con efectos secundarios (imprimir, mutar): la comprensión es para producir datos.
  • Anidar comprensiones hasta volverlas indescifrables.
  • Nombrar variables crípticas que ocultan qué genera la expresión.

Expresivo pero legible

Python premia leer como se escribe. Una comprensión bien nombrada es casi prosa: cuadrados de los pares mayores que dos. Si se puede leer así en voz alta, vas por buen camino.

Decide qué construcción corresponde:

Arrastra cada ficha a su categoría (o tócala y luego toca la categoría). También puedes usar el teclado.

Video complementario
Recurso audiovisual para reforzar los conceptos.

Toma un bucle con append que filtra y transforma. Reescríbelo como comprensión y evalúa: ¿gana en claridad? Si la lógica creció demasiado, ¿qué hubieras preferido?

Tu texto se guarda sólo en este dispositivo.

Las respuestas y tu progreso se guardan sólo en este dispositivo. Contenido firmado por su autoría mediante Lumbre.

Autoevaluación

Comprueba lo que aprendiste

2 preguntas · ves cada respuesta al momento · el resultado queda guardado en tu historial

Iniciar autoevaluación
Más sobre esta lección

Rutas vivas

¿Y ahora qué? Elige el camino por lo que necesitas

No es un listado al azar: cada camino responde una pregunta distinta y te dice por qué.

Otra forma de comprenderlo

✦ Explorar el universo completo
Explora temas relacionados

Conceptos

Comentarios

Inicia sesión para comentar.

Todavía no hay comentarios. Sé la primera persona en opinar.