计算Python中出现的次数

时间:2017-07-19 15:31:30

标签: python

我有一个包含012的列表, 我想用每个的计数创建一个字典。 这是我的代码,

count_map = {}
for i in my_list:
  if i in count_map:
     count_map[i] += 1
  else:
     count_map[i] = 1

我的问题是如何更加诡异地编写这段代码。

3 个答案:

答案 0 :(得分:6)

您可以使用collections.Counter为您执行此操作:

from collections import Counter
count_map = Counter(my_list)

您可以使用dictionary

键入强制转换为dict(Counter(my_list))

答案 1 :(得分:2)

我会以这种方式在字典中增加值:

count_map = {}
for i in my_list:
  count_map[i] = count_map.get(i,0) + 1

答案 2 :(得分:1)

使用dict cmprh:

l=[1,1,1,2,1,2,5,4,2,5,1,4,5,2]
{i:l.count(i) for i in set(l)}

输出:

{1: 5, 2: 4, 4: 2, 5: 3}