I think I want to make a 2D dictionary with multiple keys per value.
I know how to make a 2D dictionary using defaultdict
:
from collections import defaultdict
2d_dict = defaultdict(dict)
2d_dict['canned_food']['spam'] = 'delicious'
And I know that using regular dictionaries you can make with multiple keys like:
dictionary={('food','canned_food'):spam}
But I want to do something like lookup by tuple-of-keys:
2d_dict[('canned_food','food')]['spam'] = 'delicious'
In the first dimension of dictionary I need ~25 keys per value. Is there a way to do this with defaultdict
?
Even if there is a way to do it with dicts is this a reasonable way to make a simple multidimensional lookup table?