品易云推流 关闭
文章详情页
文章 > Python基础教程 > Python中的defaultdict函数

Python中的defaultdict函数

Python defaultdict函数

头像

宋雪维

2020-12-31 15:11:197751浏览 · 0收藏 · 0评论

在使用Python字典的过程中,如果没有key就会自动报错,这时就需要python中defaultdict函数发挥作用。defaultdict是Python内建dict类的一个子类,功能与dict相同,但可以产生一个带有默认值的dict,如果key不存在,就会返回默认值。

1、若访问字典中不存在的键时会引发KeyError的异常。

dict1 = {'Alice': '2341', 'Beth': '9102', 'Cecil': '3258'}
dict2 = {} #定义空字典
dict3= dict() #定义空字典
bag = ['apple', 'orange', 'cherry', 'apple','apple', 'cherry', 'blueberry']
count = {}
for fruit in bag:
    count[fruit] += 1

错误:
KeyError: 'apple'

但是如果字典中的键如果能够有默认的值有时候是非常方便的。这时就需要用到defaultdict类。

2、dict.setdefault()方法

设置默认值:有两个参数,一个是键的名称,另一个是默认值。

如果键已经存在字典中就返回它的值,如果没有就将默认值保存并且返回该默认值。

setdefault(key[, default])
If key is in the dictionary, return its value. 
If not, insert key with a value of default and return default. default defaults to None

3、使用实例

strings = ('puppy', 'kitten', 'puppy', 'puppy',
           'weasel', 'puppy', 'kitten', 'puppy')
counts = {}
 
for kw in strings:
    counts.setdefault(kw, 0)
    counts[kw] += 1 # 原PPT中这里有一个笔误

以上就是为什么要使用defaultdict函数和它的使用过程,现在你对defaultdict函数有所了解了吗?defaultdict函数是一个很多的防报错的方法,快学起来吧~

关注

关注公众号,随时随地在线学习

本教程部分素材来源于网络,版权问题联系站长!

底部广告图