1
为什么下面的工作嵌套defaultdicts
x = defaultdict(dict)
for a,b,c in [('eg', 'ef', 'ee'), ('eg', 'eu', 'e4'), ('kk', 'nn', 'bb')]:
x[a][b] = c
及以下抛出一个错误?
x = defaultdict(dict)
for a,b,c,d in [('eg', 'ef', 'ee', 'gg'), ('eg', 'eu', 'e4', 'hh'),
('kk', 'nn', 'bb', 'ff')]:
x[a][b][c] = d
因为'defaultdict(dict)'只适用于两层嵌套?内部字典'd [a]'只是一个香草字典。 – jonrsharpe
@DanielLee那是不正确的;它只修复了部分问题 – jonrsharpe
如果你需要深入三层使用'defaultdict(lambda:defaultdict(dict))'。 –