zoukankan      html  css  js  c++  java
  • python collections模块 计数器(counter)

    一、计数器(counter)

    Counter是对字典类型的补充,用于追踪值的出现次数。

    ps:具备字典的所有功能 + 自己的功能

    把我写入的元素出现的多少次都计算出来
    import collections
    
    # 创建一个Counter对象
    obj = collections.Counter('ddccbbqqaaa')
    print(obj)
    
    
    '''
    把我写入的元素出现的多少次都计算出来
    Counter({'a': 3, 'd': 2, 'c': 2, 'b': 2, 'q': 2})
    
    '''
    obj.most_common() 
    要取多少得值
    import collections
    
    # 创建一个Counter对象
    obj = collections.Counter('ddccbbqqaaa')
    print(obj)
    
    
    '''
    把我写入的元素出现的多少次都计算出来
    Counter({'a': 3, 'd': 2, 'c': 2, 'b': 2, 'q': 2})
    
    '''
    
    
    
    ret = obj.most_common(4)
    print(ret)
    
    # 取前4位
    # [('a', 3), ('d', 2), ('c', 2), ('b', 2)]

    循环字典

    import collections
    
    # 创建一个Counter对象
    obj = collections.Counter('ddccbbqqaaa')
    print(obj)
    
    # Counter({'a': 3, 'd': 2, 'c': 2, 'b': 2, 'q': 2})
    
    #  循环 字典
    
    for i in obj:
        print(i,obj[i])
    
    '''
    d 2
    c 2
    b 2
    q 2
    a 3
    '''
    elements() 传的是原生的值
    import collections
    
    # 创建一个Counter对象
    obj = collections.Counter("dd")
    
    # elements() 传的是原生的值
    print(list(obj.elements()))
    
    # ['d', 'd']
    
    obj = collections.Counter(['1','2','3','4'])
    
    print(list(obj.elements()))
    # ['1', '2', '3', '4']
    update() 更新计数器 增加
    在原来基础上添加
    import collections
    
    # 创建一个Counter对象
    
    
    obj = collections.Counter(['11','22','22','44'])
    
    print(obj)
    # Counter({'22': 2, '11': 1, '44': 1})
    
    # update() 更新计数器
    obj.update(["11","11","eric"])
    print(obj)
    # Counter({'11': 3, '22': 2, '44': 1, 'eric': 1})
    subtract()
    删除

    原来的计数器中的每一个元素的数量减去后添加的元素的数量
     
    import collections
    
    # 创建一个Counter对象
    
    
    obj = collections.Counter(['11','22','22','44'])
    
    print(obj)
    # Counter({'22': 2, '11': 1, '44': 1})
    
    # update() 更新计数器
    obj.update(["11","11","eric"])
    print(obj)
    # Counter({'11': 3, '22': 2, '44': 1, 'eric': 1})
    
    obj.subtract(['eric'])
    print(obj)
    
    # Counter({'11': 3, '22': 2, '44': 1, 'eric': 0})
    import collections
    
    # 创建一个Counter对象
    
    
    obj = collections.Counter(['11','22','22','44'])
    
    print(obj)
    # Counter({'22': 2, '11': 1, '44': 1})
    
    
    obj.subtract(['eric','22','22','22'])
    print(obj)
    
    # Counter({'11': 1, '44': 1, '22': -1, 'eric': -1})
  • 相关阅读:
    网络相关知识点:nginx相关概念
    Nginx初体验(一):nginx介绍
    Mybatis常见面试题(转)
    Mybatis 的常见面试题
    springmvc和mybatis面试题(含答案)
    SpringMVC总结以及在面试中的一些问题.
    Spring69道面试题
    Spring面试题
    java基础面试题
    2018年Java面试题整理
  • 原文地址:https://www.cnblogs.com/mingerlcm/p/9386737.html
Copyright © 2011-2022 走看看