haz*_*ard 1 python type-hinting protocol-buffers
我想为接受任何 google protocol buffer 对象的函数中的参数添加类型提示。
def do_something(protobuf_obj: WHAT_IS_HERE):
# protobuf_obj can be any protocol buffer instance
pass
Run Code Online (Sandbox Code Playgroud)
我应该从图书馆放什么课google.protobuf?
我最终使用了Message抽象基类。来自文档:
class google.protobuf.message.Message协议消息的抽象基类。
协议消息类几乎总是由协议编译器生成。这些生成的类型子类化 Message 并实现如下所示的方法。
所以,现在看起来像:
from google.protobuf.message import Message
def do_something(protobuf_obj: Message):
# protobuf_obj can be any protocol buffer instance
pass
Run Code Online (Sandbox Code Playgroud)