在处理字典集合的时候经常会去访问字典的键,由于场景有很多种比如有时候访问的字典键并不存在,那么如何很好的处理缺失值呢,这里要提到的就是字典的**setdefault()**方法,setdefault()方法其实也类似于字典里的get()方法。
get()方法会判断字典的键是否存在,如果存在则返回值否则不做任何返回也不会导致任何异常,当然用get(key, default=None)其实也可以设定默认值,一旦设置了默认值,那么在没有找到键的情况就返回设定的默认值。
而用setdefault()方法直接访问字典键会返回对应键值,但是当键不存在的时候,新的键会在字典中被添加进字典中,并且默认设置为None值,这就是与get()的唯一不同之处。
test = {
'name':"anders"}
test.setdefault('name')
# 输出如下:
# 'anders'
test = {
'name':"anders"}
test.setdefault('age')
print(test)
# 输出如下:
# {'name': 'anders', 'age': None}
setdefault的方法语法是dict.setdefault(key, default=None),所以自然可以在使用setdefau