一、 基础语法
在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": "u82f1u8bed", "cn": "u4e2du6587", "fr": "u6cd5u8bed", "jp": "u65e5u8bed"}
把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)