data = json.loads(s2) # str转为dict
data2 = json.dumps(data) # dict转为json
dumps和dump作用是将字典dict转化为json
loads和load作用是json转化为字典dict
其中dump和load都需要去操作文件;dumps和loads是python格式之间的操作
涉及到接口传递json格式的数据时,需要用到json.dumps()
import json
d={'name':'tom','age':10}
print(d)
print(type(d))
print('-------dumps将dict转化为str---------------')
d1=json.dumps(d)
print(d1)
print(type(d1))
print('--------loads将json转化为dict--------------')
d2 =json.loads(d1)
print(type(d2))
print(d2)
print('--------load将一个json文件转化为dict---------------')
with open('a.json','r') as f:
dic3= json.load(f)
print(type(dic3))
print(dic3)
print('---------dump将一个dict转化为json文件:写文件操作------------')
with open('b.json','w') as f2:
json.dump(dic3,f2)
返回:
{'name': 'tom', 'age': 10}
<class 'dict'>
-------dumps将dict转化为json---------------
{"name": "tom", "age": 10}
<class 'str'>
--------loads将json转化为dict--------------
<class 'dict'>
{'name': 'tom', 'age': 10}
--------load将一个json文件转化为dict---------------
<class 'dict'>
{'name': 'tom', 'age': 10}
---------dump将一个dict转化为json文件:写文件操作------------
参考链接:https://blog.csdn.net/qq742820488/article/details/80672197
使用json传参时,经常会带有空格,导致入参时,空格会变成很多个 加号 +,dumps有个参数separatore可以处理这个问题
json.dumps(j,separators=(',',':'))
还有一个request库的请求结果,请求后是一个对象,这个对象可转化为一个json,再进行字段提取
res = request.post(......) # res是一个response对象
tel = res.json()['tel']