解析包含多个对象的 JSON 可以使用以下方法:
- 如果 JSON 是一个数组,你可以使用循环来遍历数组并解析每个对象。例如:
import json json_str = '[{"name": "John", "age": 30}, {"name": "Jane", "age": 25}]' data = json.loads(json_str) for obj in data: print(obj['name'], obj['age'])
输出:
John 30 Jane 25
- 如果 JSON 包含多个顶级对象,你可以使用 JSON 解析器的
object_pairs_hook
参数来将 JSON 解析为 Python 字典,并在字典中保存每个顶级对象的键和值。例如:
import json json_str = '{"person1": {"name": "John", "age": 30}, "person2": {"name": "Jane", "age": 25}}' data = https://www.yisu.com/ask/json.loads(json_str, object_pairs_hook=lambda x: {k: v for k, v in x})'name'], value['age'])
输出:
person1 John 30 person2 Jane 25
这里使用了 object_pairs_hook=lambda x: {k: v for k, v in x}
来将每个顶级对象保存为一个字典,并将其放入一个父字典中。
无论哪种方法,都需要使用 json.loads()
函数将 JSON 字符串解析为 Python 对象,然后根据解析后的对象类型进行相应的操作。