我有一個來自collections
模塊的計數器。總結所有計數的最佳方式是什麼?用Python計算一個計數器的所有值
例如,我有:
my_counter = Counter({'a': 2, 'b': 2, 'c': 2, 'd': 1})
,並想獲得7
返回的值。據我所知,函數sum
用於將多個計數器一起添加。
我有一個來自collections
模塊的計數器。總結所有計數的最佳方式是什麼?用Python計算一個計數器的所有值
例如,我有:
my_counter = Counter({'a': 2, 'b': 2, 'c': 2, 'd': 1})
,並想獲得7
返回的值。據我所知,函數sum
用於將多個計數器一起添加。
像這樣的事情會做
sum(my_counter.itervalues())
這樣,你不產生任何中間數據結構,只是得到的總和懶洋洋地評估。
c = Counter({'a': 2, 'b': 2, 'c': 2, 'd': 1})
len(list(c.elements()))
>>> from collections import Counter
>>> sum(Counter({'a': 2, 'b': 2, 'c': 2, 'd': 1}).values())
7
與櫃檯工作常見模式對象:SUM(c.values())
#總所有罪狀
在Python 3.6.1中正常工作! –
,如果你有計數器的來源(例如'my_counter = Counter(source)'),您可以只執行'len(source)' – acushner