You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用新列表的元素频率更新已有的collections.Counter?

如何更新collections.Counter的元素频率统计?

有两种简单方式可以实现多次运行函数后更新计数器的需求:

  • 使用Counter自带的update()方法(原地更新)
    这个方法会直接把新列表中元素的频率累加到已有计数器里,无需重新赋值。示例代码如下:

    import collections
    
    # 第一次运行得到列表a,初始化计数器
    a = [1, 2, 3, 1, 2, 3, 4]
    count = collections.Counter(a)
    # 此时count为Counter({1: 2, 2: 2, 3: 2, 4: 1})
    
    # 第二次运行得到列表b,更新计数器
    b = [1, 3, 5, 8, 2, 1, 3]
    count.update(b)
    
    # 更新后的count结果:Counter({1: 4, 3: 4, 2: 3, 4: 1, 5: 1, 8: 1})
    
  • 使用加法运算符生成新的Counter对象
    这种方式会返回一个新的Counter实例,原计数器不会被修改,适合需要保留原统计结果的场景。示例代码如下:

    import collections
    
    a = [1, 2, 3, 1, 2, 3, 4]
    count = collections.Counter(a)
    
    b = [1, 3, 5, 8, 2, 1, 3]
    # 生成新的计数器,原count保持不变
    new_count = count + collections.Counter(b)
    
    # new_count结果:Counter({1: 4, 3: 4, 2: 3, 4: 1, 5: 1, 8: 1})
    

内容的提问来源于stack exchange,提问作者JACKY88

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 12:21:25