【发布时间】:2017-06-21 21:22:39
【问题描述】:
我有一系列要减少的字典
foo = [{'value': 45}, {'value': 2}, {'value': 3}, {'value': 0}]
reduce(lambda x, y: x['value']+y['value'] , foo)
给我以下错误
TypeError: 'int' object has no attribute '__getitem__'
我最终做的是首先使用推导式创建一个简单的数组。
reduce(lambda x, y: x+y, [x['value'] for x in foo])
【问题讨论】:
-
问题是什么?
-
请发布您想要的输出。
-
由于某些原因,当字典数量超过 2 时,
reduce()不起作用。我还不知道为什么。