- 写json文件
首先构造几个json对象,并加入到集合中。
obj1 = { 'name' : '张三', 'age' : '21', } obj2 = { 'name' : '李四', 'age' : '23', } objlist=[] objlist.append(obj1) objlist.append(obj2)
开始写入json文件
import json with open('obj.json', 'w') as f: json.dump(objlist, f, indent=4) f.close()
打开json文件,看到中文变成“\u5f20\u4e09”格式,显示中文需要加参数ensure_ascii=False。
json.dump(objlist, f, indent=4, ensure_ascii=False)
- 读json文件
import json with open('obj.json', 'r') as f: obj=json.load(f) f.close() print(obj)
不管json中显示是UTF-8格式还是中文,使用load方法加载的是对象,所以print出来始终是中文,不用考虑格式问题,但用dumps函数将对象转换成字符串就要考虑了。
jsonstr=json.dumps(obj) print(jsonstr)
打印出来是UTF-8格式,显示中文需要加参数ensure_ascii=False
jsonstr=json.dumps(obj, ensure_ascii=False) print(jsonstr)