setdefaut()方法与get()方法都用于在字典中查找键是否存在。
setdefault()的语法:
字典.setdefault(key,default)
setdefault()的作用:
在字典的键中查找key,如果找到,则返回该key键对应的值(该值是字典中已经存在的值);如果找不到,则为字典添加key键,并将新添加的key对应的默认值设为default。
get()的语法:
字典.get(key,value)
get()的作用:
在字典的键中查找key,如果找到,则返回该key键对应的值(该值是字典中已经存在的值);如果找不到,则返回value值。
可以看出,get()与setdefault()都是在字典中查找指定的键并返回值,当查找的key键在字典中存在时,两者作用相同。
但当字典中不存在所查找的key键时,作用就不同了。区别如下:
get():不会修改字典,只会返回get()自带的value值(即get()的第二个参数);
setdefault():会给字典添加一个key健,并将新添加的key键的对应的默认值设为default(是键对应的值,不是键本身)。
因此,setdefault()会修改字典。