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

在python中,如何使用动态数量的嵌套迭代嵌套的dict?

在Python中,如果你想要使用动态数量的嵌套迭代嵌套的dict,可以使用递归函数。以下是一个示例:

代码语言:python
复制
def nested_dict_iter(d, path=None):
    if path is None:
        path = []

    for key, value in d.items():
        new_path = path + [key]
        if isinstance(value, dict):
            yield from nested_dict_iter(value, new_path)
        else:
            yield new_path, value

# 示例用法
d = {
    "a": {
        "b": {
            "c": 1,
            "d": 2
        },
        "e": {
            "f": 3
        }
    },
    "g": {
        "h": 4
    }
}

for keys, value in nested_dict_iter(d):
    print(f"{keys}: {value}")

这个示例中,nested_dict_iter函数接受一个嵌套的字典d和一个可选的path参数。函数递归地遍历字典的每个层级,并在每个叶子节点上返回一个包含键列表和值的元组。

在这个示例中,输出将是:

代码语言:txt
复制
['a', 'b', 'c']: 1
['a', 'b', 'd']: 2
['a', 'e', 'f']: 3
['g', 'h']: 4

这种方法可以处理任意深度的嵌套字典,并且可以根据需要轻松地修改以满足特定需求。

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

相关·内容

领券