首页 > 解决方案 > 从嵌入在一个中的两个字典中提取数据并合并数据

问题描述

我必须以某种方式导入数据,其中我有两个字典(我认为)相互嵌入。字典看起来像这样:

rawData = {'Force': {'X': [3,4,5], 'Y': [6,1,8], 'Z': [-9,43,52]}, 'Moment': {'X': [-35,44,5], 'Y': [31,44,55], 'Z': [-13,34,535]}}

我想创建一个只有一层的字典,它结合了两个字典的嵌入键,使它看起来像这样:

data = {'ForceX': [3,4,5], 'ForceY': [6,1,8], 'ForceZ':  [-9,43,52], 'MomentX': [-35,44,5], 'MomentY': [31,44,55], 'MomentZ': [-13,34,535]}

有没有办法从嵌入式字典中提取数据并合并键?

提前致谢!

标签: pythonpython-2.7dictionarydictionary-comprehension

解决方案


使用带有嵌套循环的字典理解。

{k1 + k2 : v2 for k1, v1 in rawData.items() for k2, v2 in v1.items()}

{'ForceX': [3, 4, 5],
 'ForceY': [6, 1, 8],
 'ForceZ': [-9, 43, 52],
 'MomentX': [-35, 44, 5],
 'MomentY': [31, 44, 55],
 'MomentZ': [-13, 34, 535]}

推荐阅读