defaultdict默认能传的初始值是list, int,str之类的数值类型。但是有时候我们希望defaultdict的初始值是自己定义的特殊数值结构。这个时候可以自己定义一个无参数函数,返回我们想要的特殊初始值。然后把这个函数传到defaultdict里面去。举例如下:
from collections import defaultdict
def defaultvalue():
return [0, 0, 0]
a = defaultdict(defaultvalue)
print(a[0]) # [0, 0, 0]