現在有一個員工字典,類似這樣的結構
staff_dic = {"name":"滅霸", "age": 10000, "hobbies":["打響指", "扣腳"]}
假設我們要給員工添加愛好信息,但是我們不知道hobby這個鍵存不存在,我們通常的做法是分為三步:
1)從字典中取到hobbies對應的值,如果沒有hobbies這個鍵,則設置這個值為空列表
2)對這個值進行更新操作
3)將更新后的值賦值回字典
hobbies= staff_dic.get("hobby",[])
hobbies.append("毀滅宇宙")
staff_dic["hobbies"] = hobbies
以上方法進行了兩次查詢操作
如果使用setdefault,只需要查詢一次
staff_dic.setdefault("hobbies", []).append("毀滅宇宙")
注意:setdefault()有返回值,返回值為取到的值(鍵存在)或默認值(鍵不存在)