如果字典中的项== True->以字符串形式返回字典名称

时间:2019-07-03 22:04:38

标签: python python-3.x dictionary

我需要以某种字典结构进行搜索:

dic_global = {
    'key_lev1_1': {
        'key_lev2_a': 'some_value_1',
        'key_lev2_b': 'some_value_2'
                  },
    'key_lev1_2': 'some_value_111'
}

,我需要在整个结构中对项目执行递归搜索,以便函数可以返回项目所在的键。 因此,如果fun找到了'key_lev2_a',它会返回'key_lev1_1'-包含“ key_lev2_a”的字典所在的键的名称。

有可能吗?

1 个答案:

答案 0 :(得分:0)

def find_key(obj, key):
    if key in obj:
        return obj
    for k, v in obj.items():
        if isinstance(v, dict):
            item = find_key(v, key)
            if item is not None:
                return k

(来源:修改后的Get key by value in dictionary