主要作用:初始化一个字典(就这个功能而言和dict()等初始化没有区别),但是它可以在当Key不存在时,返回一个默认值。避免运行报错。
实例:
test_dict_1 = defaultdict(int)
test_dict_2 = defaultdict(float)
test_dict_3 = defaultdict(str)
test_dict_4 = defaultdict(list)
test_dict_5 = defaultdict(dict)
test_dict_6 = defaultdict()
print(test_dict_1["1"]) # 0
print(test_dict_2["1"]) # 0.0
print(test_dict_3["1"]) #
print(test_dict_4["1"]) # []
print(test_dict_5) # defaultdict(<class 'dict'>, {})
print(test_dict_5["1"]) # {}
print(test_dict_5) # defaultdict(<class 'dict'>, {'1': {}})
# 进行了上面的操作后,这些dict中会自动建立一个:key:value对,值为对应类型的默认值
print(test_dict_6) # defaultdict(None, {})
print(test_dict_6["1"]) # KeyError: '1',至少得有一个默认的类型,不然就和dict()的初始化一样报错