Python defaultdict: Pass a factory function, not a value

Python defaultdict: Pass a factory function, not a value

Using Python defaultdict? Don’t pass a value:

d = defaultdict(0)  # ❌ Error!

Pass a function that returns the default:

d = defaultdict(int)   # int() returns 0
d = defaultdict(list)  # list() returns []
d = defaultdict(dict)  # dict() returns {}