一、 基礎語法
在Python 的 json庫中,共有四個方法。分別是:
json.load() # 從文件中加載 json.loads() # 數據中加載 json.dump() # 轉存到文件 json.dumps() # 轉存到數據對象
二、舉例
以下所以例子,都以這個字典為例。
d1 = { 'en':'英語', 'cn':'中文', 'fr':'法語', 'jp':'日語' }
2.1 對象之間的轉化
把這個dict轉換為 json 對象:
j1 = json.dumps(d1) # dict 變 json print('j1',j1)
輸出結果是:j1 {"en": "\u82f1\u8bed", "cn": "\u4e2d\u6587", "fr": "\u6cd5\u8bed", "jp": "\u65e5\u8bed"}
把j1這個json對象,變為dict對象
d2 = json.loads(j1) # json 變 dict print('d2',d2)
輸出結果是:d2 {'en': '英語', 'cn': '中文', 'fr': '法語', 'jp': '日語'}
2.2 json文件和數據對象
with open('test.json','w+') as f: json.dump(d1, f)
這段代碼,把d1這個字典類型的對象,存到了當前目錄的test.json文件中。
test.json中的內容:
這樣就把dict導出到文件,以json方式存儲。
讀取到內存中的字典運行以下代碼:
with open('test.json','r+') as f: d3 = json.load(f) print('d3',d3)
輸出的結果是:
d3 {'en': '英語', 'cn': '中文', 'fr': '法語', 'jp': '日語'}
三、完整代碼
import json d1 = { 'en':'英語', 'cn':'中文', 'fr':'法語', 'jp':'日語' } print('d1',d1) j1 = json.dumps(d1) # dict 變 json print('j1',j1) d2 = json.loads(j1) # json 變 dict print('d2',d2) with open('test.json','w+') as f: json.dump(d1, f) with open('test.json','r+') as f: d3 = json.load(f) print('d3',d3)