使用Cython快速序列化数据类
项目描述
什么是Serpyco ?
Serpyco是一个为Python 3.6+数据类设计的序列化库,只需定义您的数据类即可使用。
import dataclasses
import typing
import serpyco
@dataclasses.dataclass
class Example(object):
name: str
num: int
tags: typing.List[str]
serializer = serpyco.Serializer(Example)
result = serializer.dump(Example(name="foo", num=2, tags=["hello", "world"]))
print(result)
{'name': 'foo', 'num': 2, 'tags': ['hello', 'world']}
Serpyco通过分析数据类字段,可以识别许多类型:列表、集合、元组、可选、联合……您还可以在定义中嵌入其他数据类。
Serpyco的主要用例是将对象序列化以用于API,但它可以帮助您在需要将对象转换为/从内置Python类型进行转换时。
功能
数据类的序列化和反序列化
输入/输出数据验证
非常快
可通过自定义编码器进行扩展
安装
Serpyco最好通过pip安装
pip install serpyco
它只有3(Python 3.6数据类回端口有4)个依赖项
rapid-json:用于数据验证和快速JSON导入/导出
python-dateutil:用于序列化datetime对象
typing_inspect:用于检查类型以创建序列化器
文档
贡献
项目详情
关闭
serpycow-1.5.0.tar.gz的哈希值
算法 | 哈希摘要 | |
---|---|---|
SHA256 | a0d706023e6e87f063fcfe7b807864911fbdb6658e8eb2fdc58593b35603b9da |
|
MD5 | 71b2c94ac6fb893b2a85dcf841250b9f |
|
BLAKE2b-256 | 6d5a780d11f4e8b5a91a9a6a76a63f5654b0bd910dc245f47566b864a8020bf1 |