json
本质上是一个字符串,有一些特定格式,且每一种编程语言偶有这种格式实现数据传输
#序列化
info={'code':100,"data":1}
import json
data_string=json.dumps(info)
print(data_string) #{"code": 100, "data": 1}
#反序列化
info='{"code":100,"data":1}'
import json
data_string=json.loads(info)
print(data_string) #{'code': 100, 'data': 1}
常见的json格式(里面必须时“ ” ,且元素不能是元组)
v1='{"k1":123,"k2":456}' #是json格式的字符串
v2="{"k1":123,'k2':456}" #不是json格式的字符串
v3='{"k1":123,"k2":456,"k3":[11,22,33,44]}' #是json格式的字符串
v4='{"k1":123,"k2":456,"k3":(11,22,33,44)}' #不是json格式的字符串
v5='{"k1":123,"k2":456,"k3":true}' #是json格式的字符串
v6='{"k1":123,"k2":456,"k3":True}' #不是json格式的字符串
中文乱码
info={'杨振浩':100,"data":1}
import json
data_string1=json.dumps(info)
data_string2=json.dumps(info,ensure_ascii=False)
print(data_string1)
print(data_string2)
#{"\u6768\u632f\u6d69": 100, "data": 1}
#{"杨振浩": 100, "data": 1}
序列化支持的序列
#Python JSON #dict object #list,tuple array #str string #int,float number #True true #False false #None null