在 Python 中,load
和 loads
是用於處理 JSON 資料的兩個函式,分別用於從檔案和字串中載入 JSON 資料。它們都屬於 json
模組。以下是詳細的說明和示例:
json.load
json.load
用於從一個檔案物件中讀取 JSON 資料並將其解析為一個 Python 物件。
示例
假設我們有一個包含 JSON 資料的檔案 data.json
,內容如下:
{ "name": "John", "age": 30, "city": "New York" }
可以使用 json.load
來讀取這個檔案:
import json # 開啟檔案並讀取 JSON 資料 with open('data.json', 'r') as file: data = json.load(file) print(data) # 輸出: {'name': 'John', 'age': 30, 'city': 'New York'}
json.loads
json.loads
用於從一個字串中解析 JSON 資料並將其轉換為一個 Python 物件。
示例
假設我們有一個 JSON 格式的字串:
import json json_string = '{"name": "John", "age": 30, "city": "New York"}' # 將 JSON 字串解析為 Python 物件 data = json.loads(json_string) print(data) # 輸出: {'name': 'John', 'age': 30, 'city': 'New York'}
區別
json.load
: 從檔案物件中讀取 JSON 資料。json.loads
: 從字串中讀取 JSON 資料。
其他相關函式
json.dump
: 將 Python 物件轉換為 JSON 格式,並將其寫入檔案。json.dumps
: 將 Python 物件轉換為 JSON 格式的字串。
import json data = { "name": "John", "age": 30, "city": "New York" } # 將 Python 物件寫入 JSON 檔案 with open('output.json', 'w') as file: json.dump(data, file)
json.dumps
示例
import json data = { "name": "John", "age": 30, "city": "New York" } # 將 Python 物件轉換為 JSON 字串 json_string = json.dumps(data) print(json_string) # 輸出: '{"name": "John", "age": 30, "city": "New York"}'
總結起來,json.load
和 json.loads
都是用於將 JSON 資料解析為 Python 物件的函式,區別在於前者是從檔案讀取,後者是從字串讀取。