概述
很多人都把这个讲得很复杂,眼花缭乱的,其实很简单:defaultdict()是对dict的改进,如下:
def default0():
return 0
from collections import defaultdict
ddict=defaultdict(default0)#空字典,由于字典是键-值的形式,由于定义了默认值为0,所以当键不存在,则返回默认值。
dict={}#平常我们常用的空字典,由于没有定义默认值,所以当键不存在,则直接报错。
#测试
print(ddict[1])#随便用什么键测试都行,不一定要是1.
print(dict[1])#随便用什么键测试都行,不一定要是1.
结果如下:一个返回默认值,一个返回0。
分割线
那么defaultdict()有什么用呢?从from collections import defaultdict
我们大概就可以猜到,用来计数统计喽。
比如我们需要统计我们的包bag里每一种水果有多少个,如下:
bag = ['apple', 'apple', 'orange']#包里的水果
from collections import defaultdict
ddict=defaultdict(int)#int是什么鬼,带你长长见识,这个相当于默认值为0,更加简洁。但是文章开头那个定义更加通用。
for fruit in bag:
ddict[fruit] += 1
ddict
结果如下:
显然,defaultdict
很方便,这个时候,如果我们用最普通的dict
的话,是要报错的,因为’apple’这样的键不存在,索引将报错keyerror。
最后
以上就是受伤航空为你收集整理的python中defaultdict()函数的介绍以及应用场景的全部内容,希望文章能够帮你解决python中defaultdict()函数的介绍以及应用场景所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复