python學習:counter計數

十五樓亮哥發表於2015-01-27

一:定義一個list陣列,求陣列中每個元素出現的次數

如果用java來實現,是一個比較複雜的,需要遍歷陣列list。

但是python很簡單:看程式碼

a = [1,4,2,3,2,3,4,2]
from collections import Counter
print Counter(a)

列印結果:

Counter({2: 3, 3: 2, 4: 2, 1: 1})

結果表示:元素2出現了3次;元素3出現了2次;元素4出現了2次;元素1出現了1次。


二:求陣列中出現次數最多的元素

直接看程式碼:

a = [1,4,2,3,2,3,4,2]
from collections import Counter
print Counter(a).most_commo(1)

執行結果:

[(2, 3)]

        繼續修改程式碼:

a = [1,4,2,3,2,3,4,2]
from collections import Counter
print Counter(a)
print Counter(a).most_common(2)

執行結果:

[(2, 3), (3, 2)]


三:總結

(1)從Collections集合模組中引入集合類Counter

(2)Counter(a)可以列印出陣列a中每個元素出現的次數

(3)Counter(a).most_common(2)可以列印出陣列中出現次數最多的元素。引數2表示的含義是:輸出幾個出現次數最多的元素。


相關文章