【问题标题】:extract a dictionary from a dictionary [duplicate]从字典中提取字典[重复]
【发布时间】:2017-02-28 09:12:29
【问题描述】:

我有一个字典,它在 python 程序中具有以下结构 {'John':{'age': '12', 'height':'152', 'weight':'45}},这是函数返回的结果。

我的问题是如何提取子词典?这样我就只能以{'age': '12', 'height':'152', 'weight':'45} 的形式获取数据。

*我可以想到一个使用for循环遍历字典的解决方案,因为这个字典中只有一个项目,我可以将它存储到一个新的变量中,但是我想学习一个替代方案

非常感谢

【问题讨论】:

  • 你试过d["John"]吗?或者,如果只有一个值并且您不知道密钥,则只需从 .values 中提取它。 next(iter(d.values())) 或 d[next(iter(d))]
  • 阅读任何 Python 教程的字典部分?

标签: python dictionary


【解决方案1】:
>>> d = {'John':{'age': '12', 'height':'152', 'weight':'45'}, 'Kim':{'age': '13', 'height': '113', 'weight': '30'}}
>>> for key in d:
...     print(key, d[key])
... 
John {'height': '152', 'weight': '45', 'age': '12'}
Kim {'height': '113', 'weight': '30', 'age': '13'}

只需使用d[key] 访问子词典。如果您有多个键,则类似于上述循环的内容将允许您遍历所有键。

【讨论】:

  • 我认为这是解决方案,谢谢!
  • 如果您认为这是解决方案,请投票并将此答案标记为已接受 :)
【解决方案2】:

要从字典中获取值,请使用 dict[key]:

>>> d = {'John':{'age': '12', 'height':'152', 'weight':'45'}}
>>> d['John']
{'age': '12', 'height': '152', 'weight': '45'}
>>> 

【讨论】:

    猜你喜欢
    • 2016-09-24
    • 2019-09-26
    • 1970-01-01
    • 1970-01-01
    • 2021-06-02
    • 1970-01-01
    • 2018-04-14
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多