2015-12-24 35 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。元素存储为字典键,其计数 存储为字典值。