遍历JSON键和值的方法可以使用递归方法实现。下面是一个示例代码,用于遍历JSON对象的所有键和值。
import json
def traverse_json(json_obj, parent_key=''):
if isinstance(json_obj, dict):
for key, value in json_obj.items():
if isinstance(value, dict) or isinstance(value, list):
traverse_json(value, parent_key + '.' + key)
else:
print(parent_key + '.' + key, ':', value)
elif isinstance(json_obj, list):
for index, value in enumerate(json_obj):
if isinstance(value, dict) or isinstance(value, list):
traverse_json(value, parent_key + '[' + str(index) + ']')
else:
print(parent_key + '[' + str(index) + ']', ':', value)
# 示例JSON对象
json_str = '''
{
"name": "John",
"age": 30,
"city": "New York",
"pets": [
{"name": "Dog", "age": 5},
{"name": "Cat", "age": 3}
]
}
'''
# 将JSON字符串解析为Python对象
json_obj = json.loads(json_str)
# 遍历JSON对象
traverse_json(json_obj)
运行上述代码将输出如下结果:
.name : John
.age : 30
.city : New York
.pets[0].name : Dog
.pets[0].age : 5
.pets[1].name : Cat
.pets[1].age : 3
这个示例代码可以遍历JSON对象的所有键和值,包括嵌套的对象和列表。对于每个键值对,它会输出键的完整路径(使用点号和方括号表示嵌套关系)和对应的值。
上一篇:遍历JSON格式