时间:2021-05-22
JSON对象是javascript object即javascript中的对象,是一种通用的格式,格式严格,不支持备注。
JSON文本和JSON对象的区别:
Python中我们一般提到JSON对象指的是字典
Python的字典的格式和JSON格式,稍有不同:
json 是数据存储和交换文本信息的语法
javaScript对象表示法
用于数据传递
json中的数据格式 python中的数据
数字 整型 浮点数
字符串 字符串
布尔值 true false True False
数组 列表。元祖
对象 字典
null None
常见的json数据格式
{
code:200,
values:[
{"name":'lal','age':20}]
}
{} josn数据对应json对象
[] josn数组
代码如下
import jsonage = 10#dumps把数据转化为json语法中的数值数据json_data = json.dumps(age)print(json_data)name = '橙子'json_dta =json.dumps(name)print(json_data)person ={"chinese":99}json_data =json.dumps(person)print(json_data)#在python中可自定义类型 自定义的类型 在json中没有对应的数据格式#需要制定编码规则 通过编码规则 将自定义类型的数据转换为json可识别的数据class Person(): def __init__(self,name): self.name = name def __str__(self): return f"Person(name={self.name})" #__repr__通过容器调用对象调用__repr__ #__str__当打印对象时输出设定的格式信息 __repr__ =__str__p = Person("橙子")print(p)print(type(p))#<class '__main__.Person'>#在json中无对应数据#存储Person类型的数据-需获取json可识别数据格式#方式1#对象__dict__获取对象的特征信息以字典形式存储json_data = json.dumps(p.__dict__)print(json_data)#{"name": "\u6a59\u5b50"}#本质上存储的是字典#loads解析为json数据python_data =json.loads(json_data)print(python_data)#对应对象为Person对象 需要根据数据信息创建对象p = Person(python_data["name"])print(p,type(p))#Person(name=橙子) <class '__main__.Person'>#方法二存储时设置编码规则 存的是指定的编码规则数据#获取的时候要对应有一个解码规则 在根据数据解析成对象#对以上操作封装#PersonEncoder编码class PersonEncoder(json.JSONEncoder): #重写方法 #这个方法在dumps时 内部自动调用 #子类重写父类的方法 子类对党调用时 只能调用重写 因为会吧父类方法覆盖 def default(self, o): #把规则写出来 #o 表示要进行json转换的对象 return o.__dict__P =Person('橙子2')#CLS制定编码规则#对象__dict__获取对象的特征信息以字典形式存储json_data =json.dumps(P,cls=PersonEncoder)print(json_data)#{"name": "\u6a59\u5b502"}#解析JSONDecoderclass PersonDecoder(json.JSONDecoder): def __init__(self): #指定解码规则 #object_hook对象挂钩-对象解析-接受的是一个函数 super().__init__(object_hook=self.to_python_obj) def to_python_obj(self,d): #d接受的是字典,当前制定的转化为json对象的数据格式 return Person(d['name'])#解析操作python_data =json.loads(json_data,cls=PersonDecoder)print(python_data)#Person(name=橙子2)以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。
声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。
XML转JSON以下代码演示了如何将一个xml文件的数据转换为Json格式数据:functionxmlToArray($xml,$options=array()
python如何将json格式的数据快速的转化成指定格式的数据呢?或者转换成sql文件?下面的例子是将json格式的数据准换成以#_#分割的文本数据,也可用于生
Mysql将查询结果集转换为JSON数据前言学生表学生成绩表查询单个学生各科成绩(转换为对象JSON串并用逗号拼接)将单个学生各科成绩转换为数组JSON串将数组
小程序的上传文件接口的注意需要对接口返回的数据转换为JavaScript对象//JSON.parse()将JSON格式的数据转换为JavaScript对象JSO
python操作json的方法有json.dumps——将json对象(字典)转换为字符串对象json.loads——将字符串对象转换为json对象(字典)如果