Skip to main content
 首页 » 编程设计

python之python 中 list.count( ) 的替代方法

2025年05月04日8lovecherry

我希望能够为 python 中的内置计数编写替代代码: 此代码有效

def count(element,seq): 
    """Counts how often an element occurs 
    ...in a sequence""" 
    mycount = seq.count(element) 
    return mycount 

但我想将它写在一个 for 循环中(或其他方式?),我已经做到了这一点:

def count(element,seq): 
    """Counts how often an element occurs 
    ...in a sequence""" 
    for i in seq: 
        if  element == seq: 
            print i 

我不确定如何将重复出现的元素作为整数返回。任何帮助表示赞赏!!

请您参考如下方法:

使用 sum() 和生成器表达式:

def count(element,seq): 
    """Counts how often an element occurs 
    ...in a sequence""" 
    return sum(1 for i in seq if i == element) 

这是做什么的:它遍历 seq 中的每个项目,如果该项目等于 element,它会生成一个 1, sum() 相加得到总数。

使用这样的生成器表达式意味着一次只会引用 seq 的一项,从而使您可以高效地扫描巨大序列。