Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

Python Functional Python The Lambda Lambada Reduce

Functional python

When I'm running this code on my python compiler, it works fine and even outputs the correct answer, i.e 978.63.

Is the question asking me to do something else other than finding the product of values in each tuple and adding them up? Seriously at a loss here.

prices.py
from functools import reduce
from operator import add

prices = [
    (6.99, 5),
    (2.94, 15),
    (156.99, 2),
    (99.99, 4),
    (1.82, 102)
]

def product_sales(tup):
  return tup[0] * tup[1]

total = reduce(add,(list(map(product_sales,prices))))

1 Answer

total = reduce(add, map(product_sales, prices)) 
  1. You don't have to add the list function.
  2. You had one too many parentheses.