计算Python中出现的次数[重复]

Posted

技术标签:

【中文标题】计算Python中出现的次数[重复]【英文标题】:Counting the number of occurrences in Python [duplicate] 【发布时间】:2017-12-24 23:45:53 【问题描述】:

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

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

我的问题是如何以更 Python 的方式编写此代码。

【问题讨论】:

collections.Counter(my_list) 有没有人能够决定是否应该通过答案或评论来回答此类问题?我还在挣扎 为什么投反对票? 我是 Python 新手,正在尝试学习样式指南,是否仅适用于高级用户? 【参考方案1】:

使用字典 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

【讨论】:

【参考方案2】:

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

from collections import Counter
count_map = Counter(my_list)

您可以使用dict(Counter(my_list)) 将其类型转换为dictionary

【讨论】:

【参考方案3】:

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

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

【讨论】:

以上是关于计算Python中出现的次数[重复]的主要内容,如果未能解决你的问题,请参考以下文章

怎样求数组中元素重复的次数

列表 - 如何查找项目出现的次数[重复]

计算字符串在字符串中出现的次数[重复]

Python统计列表中的重复项出现的次数的方法

错误:计算数据框中的出现次数时无需重复

c# - 如何计算ReadOnlyCollection字段中字符串的出现次数[重复]