溫馨提示×

json包含多個對象怎么解析

小億
355
2023-08-25 18:21:03
欄目: 編程語言

解析包含多個對象的 JSON 可以使用以下方法:

  1. 如果 JSON 是一個數(shù)組,你可以使用循環(huán)來遍歷數(shù)組并解析每個對象。例如:
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
  1. 如果 JSON 包含多個頂級對象,你可以使用 JSON 解析器的 object_pairs_hook 參數(shù)來將 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() 函數(shù)將 JSON 字符串解析為 Python 對象,然后根據(jù)解析后的對象類型進(jìn)行相應(yīng)的操作。

0