核心:
json.dumps()用于将字典形式的数据转化为字符串 (重要)
json.loads()用于将字符串形式的数据转化为字典 (重要)
json.dump()用于json文件读写,json.dump(x,f),x是对象,f是一个文件对象,将json字符串写入到文件中。
json.load()加载json格式文件,从文件中读取json数据。
一、json.dumps()用于将字典形式的数据转化为字符串,json.loads()用于将字符串形式的数据转化为字典
代码:
import jsondata = {'name' : 'Connor','sex' : 'boy','age' : 26}print(data)data1=json.dumps(data)print(data1)data2=json.loads(data1)print(data2)print(type(data))#输出原始数据格式print(type(data1))#输出经过json.dumps的数据格式print(type(data2))#输出经过json.loads的数据格式#对应输出结果
{'name': 'Connor', 'sex': 'boy', 'age': 26}
{"name": "Connor", "sex": "boy", "age": 26}
{'name': 'Connor', 'sex': 'boy', 'age': 26}
<class 'dict'>
<class 'str'>
<class 'dict'>
如果直接将dict类型的数据写入json文件中会发生报错,因此在将数据写入时需要用到json.dump(),
json.load()用于从json文件中读取数据.
with open('data3.json','a',encoding='utf-8') as f: f.write(data1)f.close()data4=json.load(open('data3.json'))#json.load()用于读取json数据print(data4)#打印结果{'name': 'Connor', 'sex': 'boy', 'age': 26}
json.dump和json.dumps很不同,json.dump主要用来json文件读写,和json.load函数配合使用。
json.dump(x,f),x是对象,f是一个文件对象,这个方法可以将json字符串写入到文本文件中。
import json
data = [{"a":"aaa","b":"bbb","c":[1,2,3,(4,5,6)]},33,'tantengvip',True]
data2 = json.dumps(data)
print(data2)
f = open('./tt.txt','a')
json.dump(data2,f)
这样就生成了一个tt.txt文件,保存了json格式的数据。dumps还提供pritty print,格式化的输出。
json.load加载json格式文件 下面是从txt文件中读取了json数据。
f = open('./tt.txt','r')
hehe = json.load(f)
print(hehe)