跳转到主要内容

一组用于各种通用用途的数据序列化器

项目描述

cromlech.marshallers

cromlech.marshallers 提供了在Python对象和其他格式之间转换数据的方法。

目前,cromlech.marshallers 支持

  • JSON (本地 & RapidJSON)

  • pickle (本地)

  • marshal (本地)

  • msgpack

  • YAML

  • BSON

使用第三方库的序列化器使用条件导入。请检查 setup.py extra_requires 以透明地包含它们。

示例

>>> from cromlech.marshallers import JSONMarshaller
>>> marshaller = JSONMarshaller()
>>> struct = [1, "two", 3]
>>> data = marshaller.dumps(struct)
>>> assert marshaller.loads(data) == struct

功能

每个序列化器可以处理字符串或字节(根据其二进制性质),流和文件。

>>> marshaller.dumps(struct)
>>> marshaller.loads(data)
>>> marshaller.dump(struct, stream)
>>> marshaller.load(stream)

文件访问由一个锁监控,该锁防止并发。此锁可以配置为包括一个全面的超时。

>>> marshaller.dump_to(struct, path, timeout=2)
>>> marshaller.load_from(path, timeout=2)

此外,序列化器可以用作装饰器,以便将函数或方法的结果进行序列化

>>> @marshaller.wraps
... def hello():
...     return 'world'

您可以在此处查看详细用法 这里

变更日志

0.1 (2020-11-27)

  • 首次发布

项目详情


下载文件

为您的平台下载文件。如果您不确定选择哪个,请了解有关 安装包 的更多信息。

源代码分发

cromlech.marshallers-0.1.tar.gz (9.7 kB 查看哈希值)

上传时间: 源代码

由以下支持