跳转到主要内容

将protobuf生成的消息转换为Python友好的schematics模型。

项目描述

让Protobuf消息像Python一样可爱。

动机

当涉及到高性能的schema-aware API时,Protobuf和gRPC非常出色,但Google设计Protobuf时并没有尝试使其生成的代码在Python中成为惯用代码,这在将消息导出至接口模块外部时带来了问题。

Schematics是一个可爱且Pythonic的schema库。为什么不将它们结合起来呢?

安装

使用pip

pip install proto_schamatics

示例

检查一个模块就像这样简单

from proto_schematics import ProtobufModule

models = ProtobufModule('my_protobuf_lib').import_schema()
MySchamticsModel = models['ProtobufMessageName']

您也可以以懒散的lint不友好方式做

from proto_schematics import ProtobufModule
ProtobufModule('my_protobuf_lib').meta_import()

from protobuf_schematics import ProtobufMessageName as MySchematicsModel

支持

  • 日期时间作为原生的Python类型

  • 持续时间作为TimeDeltas

  • 包装器作为原生可空类型

项目详情


下载文件

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

源分布

proto_schematics-0.1.0.tar.gz (4.1 kB 查看哈希值)

上传于

由以下支持

AWS AWS 云计算和安全赞助商 Datadog Datadog 监控 Fastly Fastly CDN Google Google 下载分析 Microsoft Microsoft PSF 赞助商 Pingdom Pingdom 监控 Sentry Sentry 错误记录 StatusPage StatusPage 状态页