首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何获取python字典中与不同列表中的值相对应的所有内层嵌套键的列表?

要获取Python字典中与不同列表中的值相对应的所有内层嵌套键的列表,可以使用递归的方式遍历字典的键值对。以下是一个示例代码:

代码语言:txt
复制
def find_keys(dictionary, target_values, current_keys=[]):
    result = []
    for key, value in dictionary.items():
        if isinstance(value, dict):
            new_keys = current_keys + [key]
            result.extend(find_keys(value, target_values, new_keys))
        elif value in target_values:
            result.append(current_keys + [key])
    return result

这个函数find_keys接受三个参数:dictionary是要搜索的字典,target_values是目标值的列表,current_keys是当前的键列表,默认为空列表。

函数首先遍历字典的键值对,如果值是字典类型,则递归调用find_keys函数,并将当前键添加到current_keys列表中。如果值在目标值列表中,则将当前键列表添加到结果列表中。

使用这个函数,你可以得到与不同列表中的值相对应的所有内层嵌套键的列表。以下是一个示例:

代码语言:txt
复制
dictionary = {
    'a': {
        'b': {
            'c': 1,
            'd': 2
        },
        'e': {
            'f': 3,
            'g': 4
        }
    },
    'h': {
        'i': {
            'j': 5,
            'k': 6
        },
        'l': {
            'm': 7,
            'n': 8
        }
    }
}

target_values = [1, 4, 7]

result = find_keys(dictionary, target_values)
print(result)

输出结果为:

代码语言:txt
复制
[['a', 'b', 'c'], ['a', 'e', 'g'], ['h', 'l', 'm']]

这个结果表示与目标值1、4和7相对应的所有内层嵌套键的列表。

关于腾讯云相关产品和产品介绍链接地址,可以参考腾讯云官方文档或者腾讯云官方网站获取更详细的信息。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

3分59秒

基于深度强化学习的机器人在多行人环境中的避障实验

领券