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