2015-12-24 32 views
-4

元素的出現我想要的是得到列表的功能,如:計數列表

['comp1', 'comp2', 'comp1', 'mycomp', 'mycomp'] 

,並返回一個字典,關鍵的是計算機的名稱和值是多少在列表中重複出現相同的名稱\ key。

一樣,如果列表中獲取輸入:

["computer17", "computer6", "comp", "computer17"] 

所以回報是:

["computer17":"2",...] 
+1

您對「comp」有什麼期望? – timgeb

+0

我改變了問題@brunodesthuilliers – HelloWorld

+0

我改變了問題@timgeb – HelloWorld

回答

4

的最簡單的方法來計算在列表中的項目是使用Counter對象(計數器爲內置詞典的子類):

>>> from collections import Counter 
>>> computers = ['computer17', 'computer6', 'comps', 'computer17'] 
>>> Counter(computers) 
Counter({'computer17': 2, 'comps': 1, 'computer6': 1}) 

摘自文檔:

類計數器(__ __內置。字典)

快譯通子類,用於計算哈希的項目。有時候叫袋子 或multiset。元素存儲爲字典鍵,其計數 存儲爲字典值。