詳解Python如何解析JSON中的對象數(shù)組
由于瀏覽器可以快速解析 JSON 對象,因此它們有助于在客戶端和服務(wù)器之間傳輸數(shù)據(jù)。 本文將介紹如何使用Python的JSON模塊傳輸和接收J(rèn)SON數(shù)據(jù)。
JavaScript 對象表示法
JSON(JavaScript Object Notation)是一種數(shù)據(jù)交換語法,易于人們讀寫,易于計算機(jī)解析和生成并存儲數(shù)據(jù)。
它是一種不偏向語言的全文格式。 此外,Python 還包含一個名為 json 的庫,我們可以使用它與 JSON 數(shù)據(jù)進(jìn)行交互。
JSON 的語法被視為 JavaScript 語法的一部分,其中還包括名稱和值,因?yàn)槊Q前面有冒號 (?? 來表示數(shù)據(jù),名稱:值對之間用逗號分隔。
對象位于大括號中,而數(shù)組元素位于方括號中,其中用逗號分隔每個值。 在開始解析 JSON 之前,Python 需要一些 JSON 來處理。
我們必須首先設(shè)置一些東西。 首先創(chuàng)建一個 Python 文件,其中包含這些練習(xí)的代碼。 然后,導(dǎo)入文件中的 JSON 模塊。
Python 中的 JSON 對象
由于瀏覽器可以快速解析 JSON 對象,因此它們有助于在客戶端和服務(wù)器之間傳輸數(shù)據(jù)。 字符串、整數(shù)(浮點(diǎn)數(shù)或整數(shù))、布爾值、列表、null 或其他 JSON 對象都是 JSON 對象鍵可接受的值。
在下面的示例中,創(chuàng)建了一個由字典填充的對象 json_string,將使用 json.load() 方法解析該對象中的數(shù)據(jù),然后打印輸出中顯示的數(shù)據(jù)。
示例代碼:
import json
json_string = """
{
"Student": {
"ID" : "3",
"name": "kelvin",
"Group": "A",
"Program" : "BSSE"
}
}
"""
data = json.loads(json_string)
print (data)
輸出:
{'Student': {'ID': '3', 'name': 'kelvin', 'Group': 'A', 'Program': 'BSSE'}}
在 Python 中解析 JSON 對象數(shù)組
JSON 數(shù)組的結(jié)構(gòu)與 Python 括號列表的結(jié)構(gòu)相同。 它們可能包括嵌套數(shù)組和與 JSON 對象字段值相同的數(shù)據(jù)類型。 使用內(nèi)置包 json 的 json.loads() 函數(shù)將 JSON 字符串轉(zhuǎn)換為 Python 對象。
JSON 數(shù)據(jù)字符串由 json.loads() 函數(shù)解析,然后該函數(shù)提供包含 JSON 中所有數(shù)據(jù)的 Python 字典。 您可以通過使用名稱或索引來引用對象,從該 Python 字典中獲取解析后的數(shù)據(jù)。
我們還可以檢查字典中的嵌套 JSON 項(xiàng)。 使用關(guān)聯(lián)的方法 json.load() 解析 JSON 文件(不帶 s)。 在下面的示例中,我們使用 json.loads 來解析數(shù)組中的值。
示例代碼:
import json
json_string = """
{
"Student": {
"ID" : "3",
"name": "kelvin",
"Group": "A",
"Program" : "BSSE",
"cars": [
{"model": "BMW 330e", "mpg": 143},
{"model": "Rolls-Royce Phantom EWB", "mpg": 18}
]
}
}
"""
data = json.loads(json_string)
print (data)
輸出:
{'Student': {'ID': '3', 'name': 'kelvin', 'Group': 'A', 'Program': 'BSSE', 'cars': [{'model': 'BMW 330e', 'mpg': 143}, {'model': 'Rolls-Royce Phantom EWB', 'mpg': 18}]}}
此示例通過 JSON 解碼器將 JSON 數(shù)組轉(zhuǎn)換為 Python 數(shù)組數(shù)據(jù)類型。 在 Python 對象中使用其索引可以從 JSON 數(shù)組中獲取元素。
示例代碼:
import json
json_str = """
{
"Orders": [
{"Id": 151},
{"Id": 120},
{"Id": 131},
{"Id": 114}
]
}
"""''
data = json.loads(json_str)
order_1_id = data['Orders'][0]['Id']
order_2_id = data['Orders'][1]['Id']
order_3_id = data['Orders'][0]['Id']
order_4_id = data['Orders'][1]['Id']
total = len(data['Orders'])
print(f"Order #1: {order_1_id}, Order #2: {order_2_id}, Total Orders: {total}")
輸出:
Order #1: 151, Order #2: 120, Total Orders: 4
到此這篇關(guān)于詳解Python如何解析JSON中的對象數(shù)組的文章就介紹到這了,更多相關(guān)python解析json對象數(shù)組內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python?format()函數(shù)進(jìn)行高級字符串格式化詳解
format()是Python中功能強(qiáng)大的字符串格式化工具,它提供了比傳統(tǒng)%格式化更靈活,更強(qiáng)大的方式來處理字符串格式化,下面我們就來全面講解一下format()函數(shù)的使用方法吧2025-05-05
Python輕松實(shí)現(xiàn)刪除Excel工作表中的空白行列
在處理 Excel 數(shù)據(jù)時,空白行和空白列常常會影響數(shù)據(jù)分析,本文將介紹如何使用 Python 對 Excel 工作表中的空白行和列進(jìn)行刪除,感興趣的小伙伴可以了解下2025-09-09
python playwright實(shí)現(xiàn)獲取當(dāng)前頁面的截圖
這篇文章主要為大家詳細(xì)介紹了python playwright實(shí)現(xiàn)獲取當(dāng)前頁面的截圖的相關(guān)方法,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下2025-12-12

