我有一个字典如下:
dictA = { ('unit1','test1') : 'alpha' , ('unit1','test2') : 'beta', ('unit2','test1') : 'alpha', ('unit2','test2') : 'gamma' , ('unit3','test1') : 'delta' , ('unit3','test2') : 'gamma' }
如何独立于单位计算每个测试的重复值数量?
即
在 'test1' 中有 2x 'alpha', 1x 'delta'
在 'test2' 中有 1x 'beta', 2x 'gamma'
有什么意见吗?
非常感谢。
最佳答案
在 Python 2.7 或 3.1 或更高版本中,您可以使用 collections.Counter
:
from collections import Counter
counts = Counter((k[1], v) for k, v in dictA.iteritems())
print(counts)
打印
Counter({('test1', 'alpha'): 2, ('test2', 'gamma'): 2, ('test2', 'beta'): 1, ('test1', 'delta'): 1})
关于Python:计算字典的重复值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5490078/