she*_*ydz 3 python dictionary list-comprehension
我正在使用字典理解来提取嵌套值.我有以下代码(作为示例):
d = {1: 'a', 2: 'b', 3: 'c'}
e = {4: 'd', 5: 'e', 6: 'f'}
f = {7: 'g', 8: 'h', 9: 'i'}
# stick them together into another dict
data_dict = {'one': d, 'two': e, 'three': f}
#say we're looking for the key 8
output = {outer_key: {inner_key: inner_value for inner_key, inner_value in outer_value.items() if inner_key == 8} for outer_key, outer_value in data_dict.items()}
output = {'one': {}, 'three': {8: 'h'}, 'two': {}}
Run Code Online (Sandbox Code Playgroud)
我需要做些什么来获得JUST'三'及其价值?我不想返回空的比赛.
谢谢
像这样的东西:
>>> {k: {8: v[8]} for k, v in data_dict.items() if 8 in v}
{'three': {8: 'h'}}
Run Code Online (Sandbox Code Playgroud)