21.12.2022 Views

python_para_desenvolvedores_2ed

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

100 Programação funcional

Redução

Redução significa aplicar uma função que recebe dois parâmetros, nos dois

primeiros elementos de uma sequência, aplicar novamente a função usando

como parâmetros o resultado do primeiro par e o terceiro elemento, seguindo

assim até o final da sequência. O resultado final da redução é apenas um

elemento.

Lista

1

2

3

4

5

6

7

Função

x + y

Resultado

1

3

6

10

15

21

28

Exemplos de redução, que é implementada no Python pela função reduce():

# -*- coding: latin1 -*-

nums = range(100)

# Soma com reduce (pode concatenar strings)

print reduce(lambda x, y: x + y, nums)

# Soma mais simples, mas só para números

print sum(nums)

Saída:

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!