处理JSON数据中的嵌套结构通常需要递归地解析和处理数据
- 首先,确保已经安装了Python的
json
库。如果没有安装,可以使用以下命令安装:
pip install json
- 创建一个名为
nested_json_handler.py
的文件,并在其中编写以下代码:
import json def nested_json_handler(data): if isinstance(data, dict): for key, value in data.items(): print(f"Key: {key}") nested_json_handler(value) elif isinstance(data, list): for index, value in enumerate(data): print(f"Index: {index}") nested_json_handler(value) else: print(f"Value: {data}") if __name__ == "__main__": json_string = ''' { "name": "John", "age": 30, "city": "New York", "hobbies": [ "reading", { "type": "sports", "name": "basketball" }, [1, 2, 3] ] } ''' json_data = https://www.yisu.com/ask/json.loads(json_string)>在这个示例中,我们定义了一个名为
nested_json_handler
的函数,该函数接受一个参数data
。首先,我们检查data
是否为字典类型。如果是,我们遍历字典中的每个键值对,并递归地调用nested_json_handler
函数处理值。如果data
是列表类型,我们遍历列表中的每个元素,并递归地调用nested_json_handler
函数处理元素。如果data
既不是字典也不是列表,我们直接打印其值。
- 运行这个脚本,你将看到如下输出:
Key: name Value: John Key: age Value: 30 Key: city Value: New York Key: hobbies Index: 0 Value: reading Index: 1 Key: type Value: sports Index: 1 Key: name Value: basketball Index: 2 Value: 0 Value: 1 Value: 2这个示例展示了如何处理JSON数据中的嵌套结构。你可以根据需要修改这个脚本,以适应你的具体需求。