Python怎么将类对象序列化成json?Python类对象如何转为json

【Python怎么将类对象序列化成json?Python类对象如何转为json】在之前的文章中小编已经给大家详细的讲解过了python中的数据是如何直接序列化成json格式的,但是这些数据都是字符串类型或者是整数类型保存在变量中 。而一个实例化后的类对象要转为json的话就不能够去这么操作了,下文会有相关的方法教程,一起往下看看吧 。

Python怎么将类对象序列化成json?Python类对象如何转为json

文章插图
(1)虽然python内置模块json中有方法可以来对数据实现序列化操作,但是这个数据如果是类对象的话就会直接报错,因为该方法根本找不到对应的编码器来将其进行转换 。在python中类对象是比较特别的数据类型,因为它可以包含任意的数据类型,但是它实际上的整体数据类型又是类 。
(2)那么想要将一个类对象序列化成json的话得用到魔法方法了,首先定义一个有构造函数和属性的python类,代码如下:
class LabelSimple:  def __init__(self, label,width, height):    self.label = label    self.width = width    self.height = height在这个类定义好之后,只需要使用一个变量来接收类名方法并传入对应参数即可完成类对象实例化操作,示例如下:
label = LabelSimple("person", 4, 10)如果将这个变量通过print()函数打印出来,得到的结果只会是类名和数据类型 。而这个类实例化出来的对象中三个属性都已经有数据了,通过__dict__这个私有变量就可以把它们取出来 。然后调用dumps()方法来将其转为json格式,这样就可以用属性名作为键,而数据则是值了,示例如下:
import jsonprint(json.dumps(label.__dict__))以上就是关于“Python怎么将类对象序列化成json?Python类对象如何转为json”的全部内容了,希望对你有所帮助 。

    推荐阅读