根据函数对列表求和

根据提供的函数,计算列表的和,其中每个元素都经过函数映射为一个值。

  • 使用map()fn将每个元素映射为一个值,使用提供的函数。
  • 使用sum()返回这些值的和。
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