DEV Community

nitiwit
nitiwit

Posted on

[python] defaultdict

normal dict raises Keyerror after querying keys that don't exist

>>> from collections import defaultdict >>> my_dict = {"one": 1, "two": 2} >>> my_dict["three"] Traceback (most recent call last): File "<stdin>", line 1, in <module> KeyError: 'three' 
Enter fullscreen mode Exit fullscreen mode

but by using a lamda in a deafultdict we can set default values for undefined keys

# create a default dict, from a dict >>> my_def_dict = defaultdict(lambda: -1, my_dict) >>> my_def_dict["zero"] -1 # create an empty default dict >>> empty_def_dict = defaultdict(lambda: true) # add key-value pairs here 
Enter fullscreen mode Exit fullscreen mode

Top comments (0)