如何在同一词典下合并两个嵌套词典


问题内容

例如我有一本字典:

dictA={"nest1":{"01feb":[1,2,3,4,5],"02feb":[1,7,8,9,10]},
       "nest2":{"01feb":[1,2,3,4,5],"02feb":[6,4,8,10,10]}}

内部列表的长度相同。我需要将 nest1nest2 合并为一个字典,其结果应如下所示:

dictA={"nest":{"01feb":[2,4,6,8,10],"02feb":[7,11,16,19,20]}}

问题答案:

请为您的查询找到以下代码。

dictA={"nest1":{"01feb":[1,2,3,4,5],"02feb":[1,7,8,9,10]},
       "nest2":{"01feb":[1,2,3,4,5],"02feb":[6,4,8,10,10]}}
result ={}
final_op = {}
for k,v in dictA.iteritems():
    for nk,nv in v.iteritems():
        if result.has_key(nk):
            i=0
            while i < len(result[nk]):
                result[nk][i] += nv[i]
                i += 1
        else:
            result[nk] = nv
final_op['nest'] = result
print final_op

输出:

{'nest': {'02feb': [7, 11, 16, 19, 20], '01feb': [2, 4, 6, 8, 10]}}