使用字典更新添加[重复]
Posted
技术标签:
【中文标题】使用字典更新添加[重复]【英文标题】:Addition using Dictionary updates [duplicate] 【发布时间】:2013-08-10 18:18:32 【问题描述】:我有一堆字典,例如 ...
u'APPLES': 1
u'PEARS': 7
u'BANANAS': 10
u'APPLES': 9
u'PEARS': 13
u'BANANAS': 20
但是我想将它们加在一起,所以我最终得到"APPLES":10
等。什么是最好的pythonic 方式来做到这一点。
谢谢,
【问题讨论】:
数据是什么形式的?是u'APPLES': 1, u'PEARS': 7, ...
还是[u'APPLES': 1, u'PEARS': 7, ... ]
?
有点令人失望的是,该问题的 OP 选择了他所做的答案而不是 DiggyF 的答案(这与我的相同......甚至还有不必要的 reduce
替代方案),但是是的,这是一个重复。
【参考方案1】:
from collections import Counter
counts = Counter()
for d in bunch_of_dicts:
counts.update(d)
【讨论】:
Counter.update
会更简洁。
完美。非常感谢,【参考方案2】:
import collections
totals = collections.Counter()
for d in a_bunch_of_dicts:
totals.update(d)
【讨论】:
我很惊讶已经 2 分钟了,仍然没有人建议reduce
导致争论每个 reduce
是否更好作为显式循环。 :)以上是关于使用字典更新添加[重复]的主要内容,如果未能解决你的问题,请参考以下文章