pythonic从nest字典中调用特定键/值的方法

时间:2018-02-12 02:46:58

标签: python dictionary

从嵌套字典中获取特定键/值的pythonic方法是什么?

例如,我想从这个嵌套字典中获取所有奇怪的dict值:

nested_dict = {'bulldog': {'type': 3}, 'cat': {'type': 4}, 'yorkie': {'type': 11}, 'pitbull': {'type': 8}}

输出应该如下所示:

new_dict = {'bulldog': {'type': 3}, 'yorkie': {'type': 11}}

此外,如果我只想拉出具有奇数值的嵌套键,那么输出将如下所示:

new_dict2 = {'type': 3, 'type': 11}

1 个答案:

答案 0 :(得分:3)

使用dict comprehension之类的内容相当简单:

代码:

new_dict = {k: v for k, v in nested_dict.items() if v['type'] % 2 != 0}

测试代码:

nested_dict = {'bulldog': {'type': 3}, 'cat': {'type': 4},
               'yorkie': {'type': 11}, 'pitbull': {'type': 8}}

new_dict = {k: v for k, v in nested_dict.items() if v['type'] % 2 != 0}
print(new_dict)

结果:

{'bulldog': {'type': 3}, 'yorkie': {'type': 11}}