我有一个使用协议缓冲区的API,我想将其包装在Python SDK中。我使用protoc根据原始buf定义自动生成Python类文件。我目前拥有的包裹树是
package_name/
module_name/
protocompiled/
__init__.py
endpoints.py
messages.py
main_stuff.py
自动编译文件endpoints.py
使用messages.py
文件:它使用import messages
从文件中导入。但是,在给定包结构的情况下,这是不允许的,因此在尝试执行import package_name.module.protocompiled.endpoints
时会引发错误:ModuleNotFoundError: No module named 'messages'
有什么办法解决这个问题?如果我能够更改自动生成的文件,则可以执行from . import messages
,但是由于自动生成,因此不可行。