我正在使用collections.Counter()
个计数器。我想以有意义的方式结合其中两个。
假设我有2个计数器,比如说,
Counter({'menu': 20, 'good': 15, 'happy': 10, 'bar': 5})
和
Counter({'menu': 1, 'good': 1, 'bar': 3})
我想结束:
Counter({'menu': 21, 'good': 16, 'happy': 10,'bar': 8})
我该怎么做?
答案 0 :(得分:59)
您需要做的就是添加它们:
>>> from collections import Counter
>>> a = Counter({'menu': 20, 'good': 15, 'happy': 10, 'bar': 5})
>>> b = Counter({'menu': 1, 'good': 1, 'bar': 3})
>>> a + b
Counter({'menu': 21, 'good': 16, 'happy': 10, 'bar': 8})
来自docs:
提供了几个数学运算来组合Counter对象以生成多个集合(计数大于零的计数器)。加法和减法通过添加或减去相应元素的计数来组合计数器。