gpt4 book ai didi

python - 如何在 Python 中设置一个空消息的 ProtoBuf 字段?

转载 作者:太空狗 更新时间:2023-10-29 21:37:01 25 4
gpt4 key购买 nike

以下是 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/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com