Python中的计数器

时间:2015-12-02 20:58:25

标签: list python-3.x counter

有没有办法在计数器中收集有关发生数字的值?

例:
我们说我有一个清单:

list = ['a', 'a', 'a', 'b', 'b', 'b', 'c', 'c', 'c', 'd', 'd']

当我做反击时:

Counterlist = Counter(list)

我会得到:

Counter({'b': 3, 'a': 3, 'c': 3, 'd': 2})

然后我可以选择让我们说 a 并获得3:

Counterlist['a'] = 3

但我如何选择出现的号码' 3'?
类似的东西:

Counterlist[3] = ['b', 'a', 'c'] 

这可能吗?

1 个答案:

答案 0 :(得分:2)

您可以写下以下内容

import collections

my_data = ['a', 'a', 'a', 'b', 'b', 'b', 'c', 'c', 'c', 'd', 'd']
result = collections.defaultdict(list)
for k, v in collections.Counter(my_data).items():
    result[v].append(k)

然后访问result[3]以获取具有该计数的字符。