Я пытаюсь использовать 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.