[英]Python: Count Values in multi-value Dictionary
如何计算多值字典中特定值的数量?
例如,如果我的键A
和B
具有不同的数字集作为值,我想获取字典所有键中每个数字的计数。
我试过这段代码,但我得到的是 0 而不是 2。
dic = {'A':{0,1,2},'B':{1,2}}
print(sum(value == 1 for value in dic.values()))
Counter
是一个不错的选择,特别是如果您想要多个结果:
from collections import Counter
from itertools import chain
from collections import Counter
count = Counter(chain(*(dic.values())))
在 REPL 中:
>>> count
Counter({1: 2, 2: 2, 0: 1})
>>> count.get(1)
2
Counter
只是简单地计算列表中的每个项目。 通过使用chain
,我们将列表列表视为一个大列表,将所有内容粘合在一起。 将此权限提供给Counter
可以计算每个项目的数量。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.