У меня есть 2 списка примеров, и я хочу получить вложенный словарь по умолчанию с суммой значений.
Следующий код работает хорошо:
from collections import defaultdict
l1 = [1,2,3,4]
l2 = [5,6,7,8]
dd = defaultdict(int)
for i in l1:
for ii in l2:
dd[i] += ii
но я пытаюсь создать ключ по умолчанию в словаре d
:
from collections import defaultdict
l1 = [1,2,3,4]
l2 = [5,6,7,8]
dd = defaultdict(int)
for i in l1:
for ii in l2:
dd[i]['mykey'] += ii
, и это приводит к ошибке:
Traceback (most recent call last):
File "/usr/lib/python3.6/code.py", line 91, in runcode
exec(code, self.locals)
File "<input>", line 1, in <module>
File "<string>", line 12, in <module>
TypeError: 'int' object is not subscriptable
По сути, я не могу понять, есть ли шанс смешать defaultdict(dict)
и defaultdict(int)
.