用于在python对象和JSON数据结构之间转换的库

时间:2019-06-16 13:44:37

标签: python json introspection

我需要在服务器的内存中缓存了数据对象的环境中工作,并且其中一些或全部对象需要通过websocket发送到客户端。对象和数据结构之间的转换非常费力。例如,这是数据传输对象的TypeScript定义:

export interface IFieldStruct {
    field_name: string;
    type: string;
    displaylabel: string;
    notnull: boolean;
}

相应的Python对象如下所示:

class FieldStuct:
    def __init__(field_name: str, type: str, displaylabel: str, notnull: bool):
        self.field_name = field_name
        self.field_name = field_name
        self.displaylabel = displaylabel
        self.notnull = notnull

实际上,服务器端的Python对象比这更聪明。它们还具有方法,并且还具有一些不需要导出到JSON的属性。它们的某些属性可以是包含其他智能对象的列表和字典。

这是问题所在。我想在我的Python IDE(pycharm)中利用代码完成和代码检查的优势。因此,我不想将此数据存储为Python中的数据结构。但我也希望能够轻松地转换和发送这些对象。

我知道我可以为此编写自己的序列化器/解串器。但是将有数百个数据对象类,我不想手动编写一个序列化器。我想知道是否有一个好的库已经通过对象自省为我做到了?我不想重新发明轮子。 PyPi上的库太多,而我找不到合适的库。我不是要征求意见,而是要列出可以帮助我进行转换的最受欢迎的库列表。

1 个答案:

答案 0 :(得分:0)

Pickle是那里最受欢迎的(反)序列化库之一,即使不是最流行的。

https://docs.python.org/3/library/pickle.html