定义
- Json是JavaScript对象表示法,json格式是一种轻量级的文本数据交换格式,拥有存储空间小,处理速度快等优势。
数据结构
- json本质上是一种嵌套字典格式,但键所对应的值,往往更加复杂,不仅是数字,还可以是字符串,数组,列表等。
真实json格式样例数据
{
"code":200,
"apiRecordId":"19092102",
"ratingRequestId":"19092102",
"message":"成功",
"content":{
"EG_zhibiao5":"1",
"EG_zhibiao6":"0",
"EG_zhibiao3":"正常",
"EG_zhibiao4":"0",
"EG_zhibiao9":"0",
"EG_zhibiao7":"0",
"EG_zhibiao8":"0",
},
}
json.dumps()和json.dump() 都是将字典类型转化成字符串类型;json.dump()用于将dict类型的数据转成str,并写入到json文件中。
json.load()和json.loads() 都是将字符串类型转化成字典类型;json.load()用于从json文件中读取数据。
import json
# 加载json文件的第一种方式,将json格式的字符串转换为dict (将string转换为dict)
with open('sample1.json',encoding='utf-8',mode='r')
f_read=f.read() # f_read是字符串
data=json.loads(f_read)
# 加载json文件的第二种方式,load() 针对文件句柄,将json格式的字符串转换为dict,从文件中读取 (将string转换为dict)
with open('E:\找工作\数据分析\data\第一章\sample1.json') as f:
data=json.load(f)
# dump() 针对文件句柄,将dict转换为json字符串格式,写入到文件中(易存储)
dict_data={'code':'utf-8'}
with open('sample2.json','w') as f:
json.dump(dict_data,f)
# dumps() 将dict转换为json字符串格式(易传输)
json_data=json.dumps(dict_data)
总结一下:从文件中读取json格式数据用load()方法,将dict转换成json字符串格式,写入到文件中用dump()方法。
记忆要诀:要操作文件句柄的是不加s的方法,其他的用加s的方法。