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