Introduction
In Python, we can use the map() function to apply a function to each element of a list and return a new list with the modified values. We can also use the sum() function to calculate the sum of a list. In this challenge, you will need to write a function that takes a list and a function as arguments, maps each element of the list to a value using the provided function, and returns the sum of the values.
Sum List Based on Function
Write a function sum_by(lst, fn) that takes a list lst and a function fn as arguments. The function should map each element of the list to a value using the provided function, and return the sum of the values.
def sum_by(lst, fn):
return sum(map(fn, lst))
sum_by([{ 'n': 4 }, { 'n': 2 }, { 'n': 8 }, { 'n': 6 }], lambda v : v['n']) ## 20
Summary
In this challenge, you learned how to use the map() and sum() functions to calculate the sum of a list after mapping each element to a value using a provided function. This is a useful technique that can be used in many different scenarios, such as data processing and analysis.