JSON(JavaScript Object Notation) 是一種輕量級的數據交換格式,簡潔和清晰的層次結構使得 JSON 成為理想的數據交換語言。 易於人閱讀和編寫,同時也易於機器解析和生成,並有效地提升網絡傳輸效率。
JSON 函數簡介
使用 JSON 函數需要導入 json 庫:import json。
json.dumps 將 Python 對象編碼成 JSON 字符串
json.loads 將已編碼的 JSON 字符串解碼為 Python 對象
json.dumps
json.dumps 用於將 Python 對象編碼成 JSON 字符串。
語法
json.dumps(obj, skipkeys=False, ensure_ascii=True, check_circular=True, allow_nan=True, cls=None, indent=None, separators=None, encoding="utf-8", default=None, sort_keys=False, **kw)
實例
以下實例將數組編碼為 JSON 格式數據:
import json
data = [ { 'a' : 1, 'b' : 2, 'c' : 3, 'd' : 4, 'e' : 5 } ]
json = json.dumps(data)
print(json)
以上代碼執行結果為:
[{"e": 5, "d": 4, "a": 1, "c": 3, "b": 2}]
使用參數讓 JSON 數據格式化輸出:
import json
data = [ { 'a' : 1, 'b' : 2, 'c' : 3, 'd' : 4, 'e' : 5 } ]
# 打開鍵值排序、縮進為 4、以',', ': '為分隔
json = json.dumps(data, sort_keys=True, indent=4, separators=(',', ': '))
print(json)
以上代碼執行結果為:
[
{
"a": 1,
"b": 2,
"c": 3,
"d": 4,
"e": 5
}
]
json.loads
json.loads 用於解碼 JSON 數據。該函數返回 Python 字段的數據類型。
語法
json.loads(s, encoding=None, cls=None, object_hook=None, parse_float=None, parse_int=None, parse_constant=None, object_pairs_hook=None, **kw)
實例
以下實例展示了Python 如何解碼 JSON 對象:
import json
jsonData = '{"a":1,"b":2,"c":3,"d":4,"e":5}';
text = json.loads(jsonData)
print(text)
以上代碼執行結果為:
{'a': 1, 'e': 5, 'd': 4, 'b': 2, 'c': 3}