Почему я получаю сообщение об ошибке при импорте автоматически созданного кода gRPC в Python?Python

Программы на Python
Ответить
Anonymous
 Почему я получаю сообщение об ошибке при импорте автоматически созданного кода gRPC в Python?

Сообщение Anonymous »

Мне нужно написать службу RPC для некоторых приложений Python. У меня есть IDL-файл с именемsolver.proto, и я сгенерировал из него некоторый код с помощью модуля grpcio-tools. Вот результирующая структура проекта:

Код: Выделить всё

solver-service
├── main.py
└── protos/
├── __init__.py
├── __pycache__
│     └── ...
├── generate_pb.py
├── solver.proto
├── solver_pb2.py
└── solver_pb2_grpc.py
У меня для PYTHONPATH установлено значение /abs/path/to/solver-service, и я пытаюсь импортировать автоматически созданные классы gRPC из этого каталога, но нажимаю следующее:

Код: Выделить всё

solver-service$ python3
Python 3.5.2 (v3.5.2:4def2a2901a5, Jun 26 2016, 10:47:25)
[GCC 4.2.1 (Apple Inc. build 5666) (dot 3)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import protos.solver_pb2
>>> import protos.solver_pb2_grpc
Traceback (most recent call last):
File "", line 1, in 
File "/abs/path/to/solver-service/protos/solver_pb2_grpc.py", line 4, in 
import solver_pb2 as solver__pb2
ImportError: No module named 'solver_pb2'
По какой-то причине я могу успешно импортировать protos.solver_pb2, но интерпретатор жалуется на импорт protos.solver_pb2_grpc из-за какой-то проблемы с относительным путем. Обзвон всех разработчиков Python, выполняющих работу с gRPC. Как мне добиться, чтобы это работало?

Подробнее здесь: https://stackoverflow.com/questions/460 ... -in-python
Ответить

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

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

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

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

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