0%

KeyError

‘alex’

错误1.1

报错信息:

1
2
3
4
Traceback (most recent call last):
File "C:/Users/Sure/PyProject/day05/01 exercise.py", line 39, in <module>
print(dic['alex'])
KeyError: 'alex'

错误代码:

1
2
dic = {'key': 1, 'dsb': 'alex'}
print(dic['alex'])

错误原因:

使用键查找字典中的值是一种暴力查找方法,如果字典中不存在相应的键,会直接报错

解决方法:

使用.get()方法查找,如果字典中不存在查找的键,将会返回None:

1
2
print(dic.get('key'))
print(dic.get('alex'))

也可以使用.setdefault()方法,如果字典中不存在,将会新建一个键值对:

1
2
print(dic.setdefault('alex'))
print(dic)