python字典的setdefault方法和get方法
在python的字典对象中,可以直接使用键名获取键值,像这样:
>>> d = {"x":1,"y":2}
>>> d["x"]
1
>>> d["y"]
2
>>>
但如果键名不存在,则会报错:
>>> d["z"]
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
KeyError: 'z'
>>>
这就影响了代码的可执行性。不过可以使用get方法或者setdefault方法避免这种错误,两种方法的作用都是获取键的键值,如果键存在于字典中,则返回键值;如果字典中不存在这个键,则返回一个默认值(这个值默认是None,但可以自行设定),如下:
'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:531509025
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
d = {"x":1, "y":2}
print(d.get("z"))
print(d.get("z",9))
输入结果如下:
None
9
可以看到,“z“这个键并不存在字典中,使用get方法获取时,就返回了None,第二次使用get方法时,设置了返回的默认值 9 。setdefault方法也是一样的。
d = {"x":1, "y":2}
print(d.setdefault("z"))
print(d.setdefault("z",9))