1. 程式人生 > >python中defaultdict的用法詳解

python中defaultdict的用法詳解

認識defaultdict:

當我使用普通的字典時,用法一般是dict={},新增元素的只需要dict[element] =value即,呼叫的時候也是如此,dict[element] = xxx,但前提是element字典裡,如果不在字典裡就會報錯,如:
這裡寫圖片描述
這時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])

輸出:

0
set()

[]