解析包含多個對象的 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
object_pairs_hook
參數來將 JSON 解析為 Python 字典,并在字典中保存每個頂級對象的鍵和值。例如:import json
json_str = '{"person1": {"name": "John", "age": 30}, "person2": {"name": "Jane", "age": 25}}'
data = json.loads(json_str, object_pairs_hook=lambda x: {k: v for k, v in x})
for key, value in data.items():
print(key, value['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 對象,然后根據解析后的對象類型進行相應的操作。