Ir para o conteúdo

Função Reduce

Tal como as suas congéneres map() e filter(), a função reduce() é uma built-in function da linguagem Python, que associa uma função e uma lista.

Relativamente à sintaxe, a reduce() é simples: reduce(função, lista, opcional). O valor opcional é um valor que, caso a lista seja nula, é tido como valor padrão. A função passada recebe dois argumentos: o primeiro, é o argumento actual da lista, enquanto que o segundo é o resultado da última chamada da função (caso exista).

Exemplos

lista = [1, 2, -3, 4, 5, -9]
def soma(a, b):
    return a + b

reduce(soma, lista)
0

# Explicação
# ((((1 + 2) + (-3)) + 4) + 5) + (-9)) = 0
#
listas = [[1, 2, 3, 4, 5], [], [10, 11, 12, 13, 14]]
for lista in listas:
    reduce((lambda x,y: x-y), lista, 0)
-15
0
-60

Referências