Как получить имя значения поля перечисления сообщения python protobufPython

Программы на Python
Ответить
Anonymous
 Как получить имя значения поля перечисления сообщения python protobuf

Сообщение Anonymous »


Я пока не увлекаюсь protobuf, но попробую сформулировать вопрос. Учитывая, что у меня есть:

перечисление SourceType { ВЕБ = 1; } сообщение Сообщение { необязательный источник SourceType = 6; } У меня есть сообщение, которое является экземпляром Message, и я хочу получить значение источника так же, как при печати сообщения. Но выполнение message.source дает мне код. Я хочу получить значение только из объекта, а не с помощью других перечислений/отображений/констант. В последней строке приведен пример того, как можно достичь ожидаемого значения, но я ищу более элегантный способ.
> сообщение > распечатать сообщение источник: ВЕБ > распечатать message.source 1 > message.DESCRIPTOR.fields_by_name['source'].enum_type.values_by_number[1].name ВЕБ
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Python»