首页 >后端开发 >Python教程 >如何在 Python 中递归迭代嵌套字典?

如何在 Python 中递归迭代嵌套字典?

Susan Sarandon
Susan Sarandon原创
2024-11-27 21:45:12836浏览

How Can I Recursively Iterate Through Nested Dictionaries in Python?

通过嵌套字典进行递归

要迭代字典中的所有键值对(包括嵌套字典中的键值对),需要递归。这是一个解决这个问题的递归函数:

def print_nested_dict(d):
    for key, val in d.items():
        if isinstance(val, dict):
            print_nested_dict(val)
        else:
            print(f"{key} : {val}")

在这个函数中,我们递归地探索字典:

  • 如果值是另一个字典,函数会用它调用自身字典。
  • 否则,它打印键值

用法示例:

考虑以下字典:

d = {
    "xml": {
        "config": {
            "portstatus": {"status": "good"},
            "target": "1",
        },
        "port": "11",
    }
}

调用 print_nested_dict(d) 将打印以下输出:

xml : {config: {portstatus: {status: good}, target: 1}, port: 11}
config : {portstatus: {status: good}, target: 1}
portstatus : {status: good}
target : 1
port : 11

这个方法有效地遍历了所有嵌套字典的层次,提供数据结构的全面视图。

以上是如何在 Python 中递归迭代嵌套字典?的详细内容。更多信息请关注PHP中文网其他相关文章!

声明:
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn