json
json是一种数据交换格式,独立于编程语言
json与dict(字典)区别
(1)字典的key不可重复,json可重复
(2)json相当于一个字符串(只是按key:value这种键值对的格式来的字符串),在python中查看json数据的类型为str
(3)dict格式:{"aa":"111","bb":True};json格式:'{"aa":"111","bb":true}'
dict转为json
json.dumps()方法将字典转换为json格式类型(需要先import json)
dict与json的对应关系表
代码:
import json
dict = {
"1":False,
"2":True,
"3":(1,2,3),
"4":[1,2,3],
"5":None
}
j = json.dumps(dict)
print("dict格式数据打印:", dict)
print("json格式数据打印:", j)
结果:
json转为dict
json.loads()方法将json转换为字典格式类型(需要先import json)
json与dict的对应关系表
代码:
import json
j = '{"1":"33","2":true,"3":null,"4":false}'
d = json.loads(j)
print("json格式数据打印:", j)
print("dict格式数据打印:", d)
结果:
字符串与字典转换
1.字典转字符串(直接用内置函数str强制转换)
d = {"1":"a","2":"b"}
s = str(d)
print("数据类型:{},输出结果:{}".format(type(d), d))
print("数据类型:{},输出结果:{}".format(type(s), s))
结果:
2.字符串转字典(evel函数)
s = '{"1":"a","2":"b"}'
d = eval(s)
print("数据类型:{},输出结果:{}".format(type(s), s))
print("数据类型:{},输出结果:{}".format(type(d), d))
结果:
json参数传入和获取
1.第一种:直接传json参数(传入时会自动转json)
2.第二种:传data参数
(1)json.dumps转为json格式上传
(2)头部需要声明一下Content-Type
3.如果返回是json数据,可以使用r.json()自动解析json数据