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