天天看點

defaultdict python_python中defaultdict用法詳解

認識defaultdict:

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

defaultdict python_python中defaultdict用法詳解

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()

[]