From 22c75cb3f8c510304d9d864fd1361aa4734dcc3a Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Luiz=20Ot=C3=A1vio?= Date: Sun, 6 Nov 2022 15:52:04 -0300 Subject: [PATCH] =?UTF-8?q?reduce=20-=20faz=20a=20redu=C3=A7=C3=A3o=20de?= =?UTF-8?q?=20um=20iter=C3=A1vel=20em=20um=20valor?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- aula113.py | 35 +++++++++++++++++++++++++++++++++++ 1 file changed, 35 insertions(+) create mode 100644 aula113.py diff --git a/aula113.py b/aula113.py new file mode 100644 index 0000000..8601e09 --- /dev/null +++ b/aula113.py @@ -0,0 +1,35 @@ +# reduce - faz a redução de um iterável em um valor +from functools import reduce + +produtos = [ + {'nome': 'Produto 5', 'preco': 10}, + {'nome': 'Produto 1', 'preco': 22}, + {'nome': 'Produto 3', 'preco': 2}, + {'nome': 'Produto 2', 'preco': 6}, + {'nome': 'Produto 4', 'preco': 4}, +] + + +# def funcao_do_reduce(acumulador, produto): +# print('acumulador', acumulador) +# print('produto', produto) +# print() +# return acumulador + produto['preco'] + + +total = reduce( + lambda ac, p: ac + p['preco'], + produtos, + 0 +) + +print('Total é', total) + + +# total = 0 +# for p in produtos: +# total += p['preco'] + +# print(total) + +# print(sum([p['preco'] for p in produtos]))