作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
以下是 Google Protocol Buffer (.proto) 文件的内容
message First
{
required uint32 field1 = 1;
optional MessageType1 request = 2;
}
message MessageType1
{
}
我想设置 MessageType1 字段请求。但我认为这是一个错误:
AttributeError: Assignment not allowed to composite field "request" in protocol message object.
如何在Python中设置这个空消息的值?
最佳答案
在Proto Buffer中的Message类的源码中得到。
def SetInParent(self):
"""Mark this as present in the parent.
This normally happens automatically when you assign a field of a
sub-message, but sometimes you want to make the sub-message
present while keeping it empty. If you find yourself using this,
you may want to reconsider your design."""
所以设置这样一条空消息的方法是调用这个函数:
first.request.SetInParent()
关于python - 如何在 Python 中设置一个空消息的 ProtoBuf 字段?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29643295/
我是一名优秀的程序员,十分优秀!