認識defaultdict:
當我使用普通的字典時,用法一般是dict={},添加元素的隻需要dict[element] =value即,調用的時候也是如此,dict[element] = xxx,但前提是element字典裡,如果不在字典裡就會報錯,如:

1.png
這時defaultdict就能排上用場了,defaultdict的作用是在于,當字典裡的key不存在但被查找時,傳回的不是keyError而是一個預設值,這個預設值是什麼呢,下面會說
如何使用defaultdict
defaultdict接受一個工廠函數作為參數,如下來構造:
dict =defaultdict( factory_function)
這個factory_function可以是list、set、str等等,作用是當key不存在時,傳回的是工廠函數的預設值,比如list對應[ ],str對應的是空字元串,set對應set( ),int對應0,如下舉例:
from collections import defaultdict
dict1 = defaultdict(int)
dict2 = defaultdict(set)
dict3 = defaultdict(str)
dict4 = defaultdict(list)
dict1[2] ='two'
print(dict1[1])
print(dict2[1])
print(dict3[1])
print(dict4[1])
輸出:
set()
[]