在Python中更新字典

时间:2014-09-04 14:27:34

标签: python dictionary

我有一个代码试图将字典嵌套在另一个字典中。代码如下所示。问题是字典" CC"重写每次都通过循环写自己。有办法防止这种情况吗?我试过附加到列表然后写下字典没有运气。 Nodes,CoordComboSort和Xcoord都是代码中的其他字典。

CoordComboSort看起来像这样:

{0:[(1, 4, 5), (1, 7, 4)], .001:[(4, 6, 8), (3, 8, 6)]}

节点看起来像这样:

{'time':[ 'A', 'B']}

我希望最后的字典看起来像这样:

{'A': 0: [(1, 4, 5)], .001: [(4, 6, 8)], 'B': 0: [(1, 7, 4)], .001: [(3, 8, 6)]}   

CC = {}

for key in CoordComboSort.keys():
    for step in range(len(Xcoord[0])):
        CC[Nodes['time'][step]] = CoordComboSort[key][step]

上面的代码生成了一个如下所示的字典:

{'A': [(4, 6, 8)], 'B': [(3, 8, 6)]}

1 个答案:

答案 0 :(得分:0)

不确定我的目标是否正确,但根据您提供的示例,以下方法可能有效。

CC = {}

for step in range(len(Nodes['time'])):
    for key in CoordComboSort.keys():
        CC[Nodes['time'][step]] = {key : CoordComboSort[key][step] for key in CoordComboSort.keys()}

对于您的输入,输出将如下:

{'A': {0: (1, 4, 5), 0.001: (4, 6, 8)}, 'B': {0: (1, 7, 4), 0.001: (3, 8, 6)}}