python 用字典进行计数的三种常用方法


 

1、常规方法

初始化一个字典,遍历列表或字符串,如果遍历的值已经存在于字典中,则字典值直接加1,否则,令字典键为当前遍历的值,字典值为1,

代码如下:

>>> dic = {}
>>> li = ['a','a','a','b','b','b','c','c','d']
>>> for i in li:
    if i in dic.keys():
        dic[i] += 1
    else:
        dic[i] = 1

>>> print(dic)
{'a': 3, 'b': 3, 'c': 2, 'd': 1}

 

2、简单方法

利用字典的get方法

代码如下:

>>> li = ['a','a','a','b','b','b','c','c','d']
>>> dic = {}
>>> for i in li:
    dic[i] = dic.get(i,0) + 1

    
>>> dic
{'a': 3, 'b': 3, 'c': 2, 'd': 1}

 

 

3、取巧方法

python中collections模块的counter方法可以直接用来计数

代码如下:

>>> from collections import Counter >>> li = ['a','a','a','b','b','b','c','c','d'] >>> counter = Counter(li) >>> counter Counter({'a': 3, 'b': 3, 'c': 2, 'd': 1}) >>> type(counter) <class 'collections.Counter'>

 

个人更推荐方法二,比方法一简洁,比方法三更能体现个人思路和能力。

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM