【发布时间】:2021-10-14 22:14:55
【问题描述】:
我有一个使用 grpc 的 python 项目。
我用python -m grpc_tools.protoc -I "pathToMyProtoFile" --python_out=. --grpc_python_out=. "pathToMyProtoFile\module.proto"创建文件
我希望所有 grpc-stuff 都在 python 包中。所以我创建了一个子文件夹“my_package_folder”并在其中添加了一个空的__init__.py。
我的问题:如何访问以及将生成的module_pb2.py 和module_pb2_grpc.py 放置在何处。
如果我将它们放在我的应用程序的根文件夹中,我将无法使用 from .. import module_pb2_grpc“尝试相对导入超出顶级包”从我的包中访问它们
如果我将它们放入我的“my_package_folder”中,则 2 个生成的文件不会相互找到。
(import module_pb2 as module__pb2 in "module_pb2_grpc.py")
python 中的这种导入机制非常混乱……我不知道从哪里开始解决这个问题。
我的文件夹结构只是主项目文件夹和所有 grpc 东西的子文件夹“my_package_folder”。
【问题讨论】:
-
你能添加你当前的文件夹结构吗?