Python设置默认字典

参考链接:https://www.cnblogs.com/wangyueyouyi/p/9561057.html

访问字典中某个‘键’时,若键不存在则会报错,比如

1
2
3
4
5
6
>>> dic = {'a' : 1}
>>> dic['b']
Traceback (most recent call last):
File "<pyshell#24>", line 1, in <module>
dic['b']
KeyError: 'b'

如果不想报错,可以给字典设置默认值。即当键存在时,返回键对应的值;键不存在时,返回默认值:

1 字典自带的 setdefault 函数

1
2
3
4
5
6
7
>>>dic = {'a' : 1}

#此时访问 dic['b'] 会报错,因为dic不存在键 ‘b’
#设置默认值
>>> dic.setdefault('b', 2)
>>> dic['b']
>>> 2

2 collections 模块的 defaultdict 函数

1
2
3
4
5
6
7
8
9
10
11
12
>>> from collections import defaultdict
>>> dic = defaultdict(int)
>>> dic['a']
>>> 0
# dic = defaultdict(int) 该式中的int 可以替换为 str flaot等。
# 为 int 时的默认值为 0
# 为 str 时的默认值为 ''
#若想设置默认值为一给定的值 比如 'oppo' 则如下
>>> dic = defaultdict(lambda : 'oppo')
>>> dic['a']
>>> 'oppo'


Python设置默认字典
https://fulequn.github.io/2020/09/Article202009268/
作者
Fulequn
发布于
2020年9月26日
许可协议