От новичка до гуру: Курсы программирования на CyberDuff

Есть ли способ получить доступ к буферам протоколов с помощью python 3.x?

Мы используем Python 3.x в наших проектах. Но официальный клиент Protocol Buffers поддерживает только python 2.x.

Я не хочу переходить на python 2.x.


  • Буферы протокола поддерживают Python 3, начиная с версии 2.6.0. protobuf.googlecode.com/svn/trunk/CHANGES.txt 11.10.2014
  • Репозиторий кода Google исчез, но документ, на который ссылается imxylz, называется здесь. Здесь не сказано, как использовать Python 3 с этой версией, просто сказано, что добавлена ​​поддержка. 06.06.2019

Ответы:


1

ОБНОВЛЕНИЕ 2: Python 3.x изначально поддерживается, начиная с версии 3.0.0.

Версии, выпущенные на GitHub, можно посмотреть здесь: https://github.com/protocolbuffers/protobuf/releases

ОБНОВЛЕНИЕ: стабильная версия protobuf 2.6.1 не поддерживает Python 3.x. Однако более новая версия 3.0.0 (все еще в бета-версии) поддерживает Python 3.x. Версии, выпущенные на PyPi, можно посмотреть здесь: https://pypi.python.org/pypi/protobuf

Нет, нет. Существует обсуждение в группе protobuf google о Поддержка Python 3.X. Это указывает на то, что Google хочет сохранить поддержку Python 2.4, поэтому перенос на Python 3.X непрост. Если проект разветвится или может отказаться от поддержки Python 2.4 и 2.5, его будет намного проще портировать.

29.12.2011
  • Как насчет того, чтобы предложить редактирование, предоставить мне ссылку или ответить на вопрос самому? Комментировать и просто говорить мне, чтобы google не очень полезно. 14.11.2013
  • я думаю, что @piotr имел в виду: старый ответ [.] [P] аренда [,] [G] oogle [(компания),] теперь есть порты на python3 [так что он должен иметь официальную поддержку] 18.12.2013

  • 2

    Вот более новый форк самой последней версии protobuf (2.5.0 + патчи arm64) на данный момент, который поддерживает Python 3 и по-прежнему обратно совместим с Python 2.4: https://github.com/GreatFruitOmsk/protobuf-py3

    19.04.2014
  • Как использовать протокол из этого пакета? Я могу заставить protobuf работать, но мне приходится вручную изменять сгенерированные файлы. Как заставить protoc работать правильно? 31.03.2015
  • Вы должны быть в состоянии сделать это, как обычно. Не могли бы вы создать задачу на github с подробным описанием? 01.04.2015
  • Я понял. Я думал, что этот устаревший протокол будет совместим с этим пакетом, но мне пришлось перекомпилировать весь protobuf-py3 и выполнить установку в системном каталоге, чтобы заменить протокол. После этого работает корректно. 01.04.2015
  • @omikron Я предлагаю попробовать 2.6. Он должен поддерживать Python 3 из коробки. 01.04.2015
  • Я пробовал protobuf 2.6 и 2.6.1, и он не готов к Python 3, потому что вызывает SyntaxError в protobuf/internal. 10.04.2015

  • 3

    В последней версии Google Protocol Buffers (2.6) добавлена ​​поддержка Python 3. Я предлагаю использовать это.

    РЕДАКТИРОВАТЬ: Неважно. Они солгали в своих примечаниях к выпуску.

    25.09.2014

    4

    Существует совместимая имплантация для python 3.x. https://github.com/openx/python3-protobuf

    22.02.2013
  • К сожалению, эта вилка устарела 28.05.2013
  • Обсуждение protobuf Python3 в группах Google: groups.google.com/forum/ #!topic/protobuf/Qalty-PenDA 23.11.2013

  • 5

    Этот пакет должен быть альфа-версией Python 3 Protocol Buffer от Google.

    https://github.com/google/protobuf/releases/download/v3.0.0-alpha-3/protobuf-python-3.0.0-alpha-3.tar.gz

    07.08.2015

    6

    Официальная библиотека Google поддерживает Python 3, начиная с версии 3.0 (29 июля 2016 г.).

    22.06.2018
    Новые материалы

    Основы Spring: Bean-компоненты, контейнер и внедрение зависимостей
    Как лего может помочь нашему пониманию Когда мы начинаем использовать Spring, нам бросают много терминов, и может быть трудно понять, что они все означают. Итак, мы разберем основы и будем..

    Отслеживание состояния с течением времени с дифференцированием снимков
    Время от времени что-то происходит и революционизирует часть моего рабочего процесса разработки. Что-то более забавное вместо типичного утомительного и утомительного процесса разработки. В..

    Я предполагаю, что вы имеете в виду методы обработки категориальных данных.
    Я предполагаю, что вы имеете в виду методы обработки категориальных данных. Пожалуйста, проверьте мой пост Инструментарий специалиста по данным для кодирования категориальных переменных в..

    Игра в прятки с данными
    Игра в прятки с данными Я хотел бы, чтобы вы сделали мне одолжение и ответили на следующие вопросы. Гуглить можно в любое время, здесь никто не забивается. Сколько регионов в Гане? А как..

    «Раскрытие математических рассуждений с помощью Microsoft MathPrompter и моделей больших языков»
    TL;DR: MathPrompter от Microsoft показывает, как использовать математические рассуждения с большими языковыми моделями; 4-этапный процесс для улучшения доверия и рассуждений в математических..

    Раскройте свой потенциал в области разработки мобильных приложений: Абсолютная бесплатная серия
    Глава 6: Работа в сети и выборка данных Глава 1: Введение в React Native Глава 2: Основы React Native Глава 3: Создание пользовательского интерфейса с помощью React Native Глава 4:..

    Все о кейсах: Camel, Snake, Kebab & Pascal
    В программировании вы сталкивались с ними при именовании переменной, класса или функции. Поддержание согласованности типов и стилей случаев делает ваш код более читабельным и облегчает совместную..