当你的Python代码执行过程中出现KeyError异常时,通常是由于你在使用字典时访问了不存在的键所导致的。例如,假设你有一个名为student的字典,但你却试图通过一个不存在的键来访问该字典,那么就会出现KeyError异常,示例代码如下:
student = {"name": "Tom", "age": 18}
# 访问不存在的键,会出现KeyError异常
print(student["gender"])
在这段代码中,我们首先定义了一个名为student的字典,然后试图通过键gender访问该字典,但由于该字典中并没有键gender,所以会出现KeyError异常。
为了避免这种情况,可以在使用字典时使用get方法来访问键,如果键不存在,则返回一个默认值,示例代码如下:
student = {"name": "Tom", "age": 18}
# 使用get方法访问键,如果键不存在,返回默认值
print(student.get("gender", "unknown"))
在这段代码中,我们使用了get方法来访问字典中的键,如果该键不存在,则返回默认值unknown,这样就不会出现KeyError异常了。
对字典的赋值,有两种方法:
>>>count={}
>>>count['a']=0
>>>count
{'a':0}
这种方法,如果字典不存在方括号里的键,则字典会增加一项。如果字典存在方括号里的键,则修改这个键的值为=右边的值。
setdefault()方法有两个参数,第一个为键,第二个为值。
如果字典不存在这个键,则字典增加一项。
如果字典存在这个键,则将其值修改为第二个参数。
>>>count.setdefault('c',0)
>>>count
{'a':0,'c':0}
>>>count.setdefault('a',1)
>>>count
{'a':1,'c':0}