要遍历包含嵌套列表的字典的字典,可以使用递归方法。以下是一个示例代码:
def traverse_dict(d):
for key, value in d.items():
if isinstance(value, dict):
traverse_dict(value) # 递归调用遍历嵌套的字典
elif isinstance(value, list):
for item in value:
if isinstance(item, dict):
traverse_dict(item) # 递归调用遍历嵌套的字典
else:
print(item) # 打印列表中的其他值
else:
print(value) # 打印字典中的其他值
# 示例字典
example_dict = {
"key1": "value1",
"key2": [
{"nested_key1": "nested_value1"},
{"nested_key2": "nested_value2"}
],
"key3": {
"nested_key3": "nested_value3"
},
"key4": "value4"
}
# 调用函数遍历字典
traverse_dict(example_dict)
上述代码中,traverse_dict
函数用于遍历字典。在遍历过程中,如果遇到嵌套的字典,则递归调用traverse_dict
函数来遍历嵌套的字典。如果遇到列表,则遍历列表中的每个元素,如果元素是字典,则同样递归调用traverse_dict
函数来遍历嵌套的字典。最后,如果不是字典或列表,则直接打印该值。
在示例中,将打印以下输出:
value1
{'nested_key1': 'nested_value1'}
{'nested_key2': 'nested_value2'}
nested_value1
nested_value2
{'nested_key3': 'nested_value3'}
nested_value3
value4