从python中的嵌套字典中提取值

莎拉·阿米尔
d= {0: {'Name': 'MN', 'volt': 1.0, 'an': 0.0}, 
    1: {'Name': 'LT', 'volt': 1.0, 'an': 5.8},
    2: {'Name': 'CK', 'volt': 1.0, 'an': 2.72}, 
    3: {'Name': 'QL', 'volt': 1.0, 'an': 0.33}}

我试图从上面的嵌套字典创建一个矩阵,这将导致以下输出:

[MN 1.0 0.0
 LT 1.0 5.8
 CK 1.0 2.72
 QL 1.0 0.33]

在python中使用.values()函数也将导致键名。

贾维斯

我想你可以在这样的列表中

>>> d = {0: {'Name': 'MN', 'volt': 1.0, 'an': 0.0}, 
         1: {'Name': 'LT', 'volt': 1.0, 'an': 5.8},
         2: {'Name': 'CK', 'volt': 1.0, 'an': 2.72}, 
         3: {'Name': 'QL', 'volt': 1.0, 'an': 0.33}}
>>> [list(i.values()) for i in d.values()]
[['MN', 1.0, 0.0],
 ['LT', 1.0, 5.8],
 ['CK', 1.0, 2.72],
 ['QL', 1.0, 0.33]]

您对外部字典的值i.values进行迭代,然后再次在迭代过程中通过提取内部字典的值,并将它们存储在具有列表理解的列表中。

如果希望它们在列表中变平

>>> sum([list(i.values()) for i in d.values()], [])
['MN', 1.0, 0.0, 'LT', 1.0, 5.8, 'CK', 1.0, 2.72, 'QL', 1.0, 0.33]

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章