由于瀏覽器可以迅速地解析JSON對象,它們有助于在客戶端和服務器之間傳輸數據。本文將描述如何使用Python的JSON模塊來傳輸和接收JSON數據。
JavaScript Object Notation
JSON (JavaScript Object Notation)是一種用于數據交換的語法,它對人的讀寫很簡單,對計算機的解析和生產也很簡單,而且還可以存儲數據。
它是一種不偏向語言的全文格式。此外,Python包括一個名為json 的庫,我們可以用它來與JSON數據進行交互。
JSON的語法被認為是JavaScript語法的一部分,它還包括name 和value ,因為name 在表示數據時前面有一個冒號(??,name: value 對被逗號分割。
對象在大括號中,而數組元素住在方括號中,每個值之間用逗號隔開。在開始解析JSON之前,Python需要一些JSON來進行處理。
有幾件事情我們必須最初設置好。首先制作一個Python文件,它將包含這些練習的代碼。然后,在該文件中導入JSON模塊。
JSON對象
由于瀏覽器可以迅速地解析JSON對象,它們有助于在客戶端和服務器之間傳輸數據。字符串、整數(浮點數或英寸)、布爾值、列表、空或另一個JSON對象都是JSON對象鍵的可接受值。
在下面的例子中,創(chuàng)建了一個由字典填充的對象json_string ,該對象中的數據將通過使用json.load() 方法進行解析,然后打印輸出中顯示的數據。
示例代碼:文章來源:http://www.zghlxwxcb.cn/news/detail-685275.html
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'}}
解析JSON數組的對象
JSON數組的結構與Python括號內的列表的結構相同。它們可能包括嵌套數組和與JSON對象字段值相同的數據類型。使用內置包json 的json.loads() 函數,將一個JSON字符串轉化為Python對象。
JSON數據字符串由json.loads() 函數解析,然后提供一個包含JSON中所有數據的Python字典。你可以通過使用名字或索引來引用對象,從這個 Python 字典中獲得解析的數據。
我們還可以檢查字典中的嵌套JSON項目。使用相關的方法json.load() 來解析一個JSON文件(沒有s)。在下面的例子中,我們使用json.loads 來解析數組中的值。
示例代碼:
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數組轉換為Python數組數據類型。在Python對象中使用其索引可以從JSON數組中獲得一個元素。
示例代碼:
import json
json_str = """
{
"Orders": [
{"Id": 151},
{"Id": 120},
{"Id": 131},
{"Id": 114}
]
} #Python小白學習交流群:711312441
"""''
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}")
輸出:文章來源地址http://www.zghlxwxcb.cn/news/detail-685275.html
Order #1: 151, Order #2: 120, Total Orders: 4
到了這里,關于Python中如何快速解析JSON對象數組的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!