【发布时间】:2018-04-18 00:12:31
【问题描述】:
获取字典列表并总结列表中每一行中匹配键的所有值的最 Pythonic 方式是什么?
我这样做了,但我怀疑理解更像 Pythonic:
from collections import defaultdict
demandresult = defaultdict(int) # new blank dict to store results
for d in demandlist:
for k,v in d.iteritems():
demandresult[k] = demandresult[k] + v
在Python - sum values in dictionary 中,问题始终涉及相同的键,但就我而言,每一行中的键可能是以前从未遇到过的新键。
【问题讨论】:
-
你能帮我理解吗,
demandlist是什么,一个字典列表,其值以某种方式有行?能举个例子吗? -
这里有3行需求列表{u'2018-04-29': 1, u'2018-04-30': 1, u'2018-05-01': 1} {u '2018-04-21': 1} {u'2018-04-18': 1, u'2018-04-19': 1, u'2018-04-17': 1}
-
知道了。您添加重复键的值这一事实让我强烈地想到了reduction,它是表达任何此类组合(不仅仅是添加)的通用工具。
-
这个解决方案完全没问题。也许只是
demandresult[k] += v
标签: python dictionary