Coletânea Python do ZERO às Redes Neurais Artificiais

Fernando Feltrin · Capítulo 160 de 287

Páginas do PDF

Coletânea Python do ZERO às Redes Neurais Artificiais

Reduce

 

Finalizando essa parte onde exploramos algumas possibilidades mais

avançadas de tratamento de dados a partir de listas, vamos entender uma função que é bastante utilizada, a chamada função reduce( ).

 

A função reduce( ) por si só não é nativa das bibliotecas pré-carregadas

em Python, sendo assim, é necessário realizar a importação desse módulo/pacote da biblioteca functools, isso é feito pelo simples comando from functools import reduce.

 

Em seguida criamos uma simples função soma, que recebe dois números

e retorna a soma dos mesmos, até aqui nada de novo.

Na sequência vamos reutilizar a variável lista que usamos em map( ),

mas dessa vez, criamos uma variável de nome resultado que chama a função reduce( ) repassando como parâmetros para a mesma nossa função soma seguido de lista.

Vamos procurar entender o que de fato acontece aqui. A função reduce(

) em si normalmente é utilizada para realizar o agrupamento dos dados de uma lista, em nosso exemplo, podemos realizar a soma de todos elementos da mesma obtendo um novo dado.

A função reduce( ) pode sua vez recebe sempre dois parâmetros, que função será utilizada e sobre quais dados será aplicada a função, respectivamente.

Nesse caso, a ideia é que seja realizada a soma do primeiro elemento de

nossa lista com o segundo elemento, este resultado será somado com o terceiro elemento, este resultado será somado com o quarto elemento, repetindo esse processo até o último elemento da lista, se forma sequencial e sempre respeitando a função que declaramos, somando sempre dois valores.

 

O resultado da soma de 1+2=3, 3+3=6, 6+4=10, 10+5=15, 15+6=21,

21+7=28, 28+8=36, 36+9=45, 45+10=55, retorna o valor 55.