我有两个示例列表,我想要达到的目标是获得一个嵌套的默认字典,其中包含值的总和。下面的代码效果很好:
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)
。