Introducción

Python permite aplicar el paradigma de programación funcional, donde las funciones se tratan como datos y se pueden pasar como argumentos. Las funciones lambda, junto con map(), filter() y reduce(), hacen que el código sea más conciso y expresivo.

Funciones lambda

Una lambda es una función anónima (sin nombre) que se define en una sola línea.

Salida:

Las lambdas son ideales para operaciones simples y rápidas.

Función map()

La función map() aplica una función a cada elemento de un iterable (como una lista o tupla) y devuelve un objeto map, que puedes convertir en lista, conjunto o cualquier otra estructura.

Sintaxis:

  • función → lo que se aplicará a cada elemento.
  • iterable → la colección de datos (lista, tupla, etc.).
  1. Lista original: numeros = [1, 2, 3, 4, 5]
  2. Función lambda: lambda x: x ** 2 → toma cada número x y devuelve su cuadrado.
  3. Aplicación con map: map(lambda x: x ** 2, numeros) → aplica la función a cada elemento de la lista.
  4. Conversión a lista: list(map(...)) convierte el resultado en una lista visible.

Salida

map() evita escribir bucles for y hace el código más limpio.

Función filter()

Filtra los elementos que cumplen una condición.

Salida:

filter() devuelve solo los elementos que cumplen el criterio.

Función reduce()

Aplica una función acumulativa a los elementos de una lista. Para usarla, debes importarla desde functools.

Salida:

reduce() combina los elementos en un solo resultado.

Combinando todo

Puedes combinar estas funciones para crear flujos de datos funcionales:

  • La función lambda n: n ** 2 calcula el cuadrado de cada número.
  • La función lambda n: n % 2 == 0 selecciona solo los números pares.
  • La función lambda x, y: x + y suma los elementos de la lista.
  • Proceso: Paso 1: x = 4, y = 1620

Salida:

Este ejemplo calcula la suma de los cuadrados de los números pares.

Conclusión

Las funciones lambda y las operaciones map(), filter() y reduce() te permiten escribir código más compacto y expresivo. Son herramientas clave para aplicar el estilo funcional en Python.

Llamada a la acción:

Crea un programa que calcule la suma de los cubos de los números impares entre 1 y 10 usando map(), filter() y reduce().


Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *