Разъяснение по Protobuf PrintField () - PullRequest
0 голосов
/ 07 июня 2018

Я пытаюсь использовать API Google Protobuf, найденный здесь , и у меня возникают проблемы со встроенным методом PrintField () со следующей информацией:

PrintField(поле, значение, out, отступ = 0, as_utf8 = False, as_one_line = False)

Печать одной пары имя / значение поля.Для повторяющихся полей значение должно быть одним элементом.

После объединения моего сообщения я могу распечатать полностью объединенный макет.Тем не менее, я хотел бы получить конкретную пару поле / значение, и я немного не уверен, как это сделать, поскольку я не могу найти полноценные примеры в Интернете.

Я пробовал следующее:

proto.PrintField (1, 1, cStringIO.StringIO ()), proto.PrintField ('field1', 'subfield', cStringIO.StringIO ())

Где мое сообщениевыглядит так: message field1 {subfield = 1;}

Запуск в таком виде приводит к следующей ошибке: «AttributeError:« int »объект не имеет атрибута is_extension», это то же самое в обоих случаях,единственное изменение - int или string.

...