Saltearse al contenido

Funciones Funcionales

Estas funciones permiten aplicar operaciones de forma declarativa y funcional sobre colecciones de datos, como listas o tuplas. Son especialmente útiles cuando se requiere aplicar una función a muchos elementos (map), filtrar según condiciones (filter), combinar datos (zip) o generar secuencias numéricas (range). Su uso favorece un estilo de programación más limpio, compacto y expresivo.

FunciónDescripción
map()Aplica una función a cada elemento de un iterable y devuelve un nuevo iterable.
filter()Filtra los elementos de un iterable según una condición dada.
zip()Une varios iterables en pares ordenados, como tuplas.
range()Genera una secuencia de números, generalmente usada en bucles.
all()Retorna True si todos los elementos de un iterable son verdaderos.
any()Retorna True si al menos un elemento es verdadero.

A continuacion te explicare con mas detalle el funcionamiento de estas funciones:

Uso típico: Aplicar una función a cada elemento de un iterable y devolver un nuevo iterable.

map.py
numeros = [1, 2, 3, 4]
al_cuadrado = map(lambda x: x ** 2, numeros)
print(list(al_cuadrado))

Salida:

map.py
[1, 4, 9, 16]

Uso típico: Filtrar los elementos de un iterable que cumplan una condición.

filter.py
numeros = [10, 15, 20, 25]
mayores_que_15 = filter(lambda x: x > 15, numeros)
print(list(mayores_que_15))

Salida:

filter.py
[20, 25]

Uso típico: Combinar varios iterables en pares ordenados (tuplas).

zip.py
nombres = ['Ana', 'Luis', 'Sofía']
edades = [28, 34, 25]
parejas = zip(nombres, edades)
print(list(parejas))

Salida:

zip.py
[('Ana', 28), ('Luis', 34), ('Sofía', 25)]

Uso típico: Generar una secuencia numérica, comúnmente usada en bucles.

range.py
for numero in range(0, 10, 2): # De 0 a 8 en pasos de 2
    print(numero, end'')

Salida:

range.py
[('Ana', 28), ('Luis', 34), ('Sofía', 25)]

Uso típico: Verificar si todos los elementos de un iterable son verdaderos.

all.py
valores = [True, 1, 5 > 2]
print(all(valores))

Salida:

all.py
True

Uso típico: Verificar si al menos uno de los elementos de un iterable es verdadero.

any.py
valores = [0, '', None, 7]
print(any(valores))

Salida:

any.py
True