计算Python中出现的次数[重复]
Posted
技术标签:
【中文标题】计算Python中出现的次数[重复]【英文标题】:Counting the number of occurrences in Python [duplicate] 【发布时间】:2017-12-24 23:45:53 【问题描述】:我有一个包含0
、1
和2
的列表,
我想创建一个包含每个计数的字典。
这是我的代码,
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中出现的次数[重复]的主要内容,如果未能解决你的问题,请参考以下文章