在Python中,如何计算元素出现在列表中的次数?

2024-04-16 21:24:57 发布

您现在位置:Python中文网/ 问答频道 /正文

我正在寻找一种方法来计算元素在列表中出现的次数。你知道吗

我找到了一个方法来做这件事,但我正在寻找一个短而有效的方法来做这件事。你知道吗

示例:

查找数字5出现在列表l中的次数。你知道吗

l = [1, 1, 3, 4, 5, 5, 5, 5]

预期结果是4。你知道吗


Tags: 方法元素示例列表数字次数
3条回答

一种方法是使用^{}

from collections import Counter

l = [1, 1, 3, 4, 5, 5, 5, 5]  # find the number of 5

c = Counter(l)
print(c[5])  # 4

如果您想知道其他项的出现次数,这将比l.count(5)更有效。(如果只关心一项,效率会降低)。你知道吗

使用list.count

>>> l = [1, 1, 3, 4, 5, 5, 5, 5]
>>> l.count(5)
4

查找列表中是否有5

>>> l = [1, 1, 3, 4, 5, 5, 5, 5]
>>> bool(l.count(5))
True

有很多方法:

1。使用list.count(如果只关心一个元素,那么最简单也是最好的):

print(l.count(5))

2。使用collections.Counter(如果您关心所有元素,也很简单,最好):

print(Counter(l)[5])

三。与len:

一起使用列表理解
print(len([i for i in l if i == 5]))

第四条。与sum:

一起使用生成器表达式
print(sum(i == 5 for i in l))

相关问题 更多 >