python中defaultdict用法详解

zz:https://www.jianshu.com/p/bbd258f99fd3

认识defaultdict:

当我使用普通的字典时,用法一般是dict={},添加元素的只需要dict[element] =value即,调用的时候也是如此,dict[element] = xxx,但前提是element字典里,如果不在字典里就会报错,如:

1.png

这时defaultdict就能排上用场了,defaultdict的作用是在于,当字典里的key不存在但被查找时,返回的不是keyError而是一个默认值,这个默认值是什么呢,下面会说

如何使用defaultdict

defaultdict接受一个工厂函数作为参数,如下来构造:

dict =defaultdict( factory_function)

这个factory_function可以是list、set、str等等,作用是当key不存在时,返回的是工厂函数的默认值,比如list对应[ ],str对应的是空字符串,set对应set( ),int对应0,如下举例:

from collections import defaultdict

dict1 = defaultdict(int)

dict2 = defaultdict(set)

dict3 = defaultdict(str)

dict4 = defaultdict(list)

dict1[2] ='two'

print(dict1[1])

print(dict2[1])

print(dict3[1])

print(dict4[1])

输出:

0

set()


[]

作者:dpengwang

链接:https://www.jianshu.com/p/bbd258f99fd3

来源:简书

简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 认识defaultdict: 当我使用普通的字典时,用法一般是dict={},添加元素的只需要dict[eleme...
    dpengwang阅读 299,812评论 5 102
  • 1. Python的hello-world: print ("Hello, Python!")、 完了 摇就完事儿...
    LunarShade阅读 2,050评论 0 0
  • 一、复习(列表)1.容器,可以同时存放多个数据。可变,有序2.元素,可以是任何类型的数据,一个列表可以同时存放不同...
    Smr_T阅读 403评论 0 0
  • 好久没更新了,太懒了- -在开发中,经常有这样的情景,从一个控制器A模态到另一个控制器B,再从Bpush到另一个控...
    不会学习的睿睿阅读 1,999评论 0 0
  • 爱一个人最好的方式,是经营好自己,给对方一个优质的爱人同时做一个有质感的女孩,读书写字旅游,早睡早起运动,美丽典雅...
    丹尼娅阅读 311评论 0 0

友情链接更多精彩内容