详解Python 中的 defaultdict 数据类型
这篇文章给大家介绍Python中的defaultdict数据类型,具体内容如下所示:
官方网址
首先,defaultdict是dict的一个子类。通常Python中字典(dict)这种数据类型是通过键值对来存取的,当索引一个不存在的键时,就会引发keyerror异常。那么,defaultdict就可以解决这个问题,它可以实现为不存的键值返回一个默认值。
defaultdict是collections包下的一个模块,defaultdict在初始化时可以提供一个default_factory的参数,default_factory接收一个工厂函数作为参数,可以是int、str、list等内置函数,也可以是自定义函数。
用法实例如下:
示例一:统计字符串中字母出现的个数。
fromcollectionsimportdefaultdict s='mississippi' d=defaultdict(int) forkins: d[k]+=1 print(d) #输出 #defaultdict(,{'m':1,'i':4,'s':4,'p':2})
如果不用defaultdict的话,写法如下:
s='mississippi' d={} forkins: ifknotind: d[k]=1 else: d[k]=d[k]+1 print(d) #输出 #{'m':1,'i':4,'s':4,'p':2}
s=[('yellow',1),('blue',2),('yellow',3),('blue',4),('red',1)] d=defaultdict(list) fork,vins: d[k].append(v) print(d) #输出 #defaultdict(,{'yellow':[1,3],'blue':[2,4],'red':[1]})
示例二:使用lambda函数。
q=defaultdict(lambda:[0,0,0]) print(q['a']) #输出 #[0,0,0]
到此这篇关于Python中的defaultdict数据类型的文章就介绍到这了,更多相关Pythondefaultdict数据类型内容请搜索毛票票以前的文章或继续浏览下面的相关文章希望大家以后多多支持毛票票!
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。