JSON(JavaScript Object Notation)是一種用於資料交換的輕量級資料格式,通常用於網路應用程式之間的資料傳遞。
JSON的格式易於閱讀和撰寫,也易於解析和產生,因此它在開發中被廣泛使用。
物件由一對大括號 {}
包圍,其中包含以逗號分隔的一組名稱/值對。名稱和值之間使用冒號 :
分隔。
{
"name": "John",
"age": 30,
"city": "New York"
}
陣列由一對方括號 []
包圍,其中包含以逗號分隔的值。
[
"apple",
"banana",
"orange"
]
以下是一個包含物件和陣列的JSON範例:
{
"name": "John",
"age": 30,
"city": "New York",
"children": [
{
"name": "Alice",
"age": 5
},
{
"name": "Bob",
"age": 8
}
]
}
在程式中使用JSON通常涉及將JSON字串解析為程式語言中的物件或陣列,或者將程式語言中的物件或陣列轉換為JSON字串。
在大多數程式語言中,都有內建的函式或庫可用於處理JSON。例如,在Python中,你可以使用內建的 json
模組來處理JSON資料
json.loads
將 JSON 字串解析為 Python 物件
json.dumps
將 Python 物件轉換為 JSON 字串
import json
# 將 JSON 字串解析為 Python 物件
json_string = '{"name": "John", "age": 30, "city": "New York"}'
python_obj = json.loads(json_string)
print(python_obj)
print(type(python_obj)) # <class 'dict'>
# 將 Python 物件轉換為 JSON 字串
python_obj = {"name": "John", "age": 30, "city": "New York"}
json_string = json.dumps(python_obj)
print(json_string)
print(type(json_string)) # <class 'str'>
儲存JSON檔:
使用json.dump
儲存
import json
data = {"name": "crab", "age": 18, "city": "New York"}
#儲存路徑/檔案名稱
json_path ='F:/python/opencv/Json/data.json'
with open(json_path, "w") as json_file:
json.dump(data, json_file)
在指定的儲存路徑中,產生了data.json的檔案
載入JSON檔:
使用json.load
載入
import json
#儲存路徑/檔案名稱
json_path ='F:/python/opencv/Json/data.json'
with open(json_path, "r") as json_file:
data = json.load(json_file)
print(data)