Python 同级不同目录导入包

Python Importing package at same level but different directory

python version:3.9.6

我似乎无法让它工作我知道有一百万个帖子与此相同,但解决方案似乎对我不起作用。我之前已经 运行 到过这个并且总是最终只是重组文件夹以将所有文件包含在一个路径中,这显然不是理想的。所以在这里再次向大家求助

我的文件夹结构如下

|project
    |my_service
        -my_service.py
    |tests
        - tests.py

我正在尝试从 my_service.py 获取函数 get_num_back 并将其导入 tests.py

我试过相对导入 from ..my_service.my_service import get_num_back 这不起作用,因为根据我的阅读,我无法访问根文件夹。

然后我尝试了 absolute import from my_service.my_service import get_num_back,这是我认为对其他人都适用的答案,但它似乎对我不起作用。然后我尝试了 from project import my_service 以及 from project.my_service import my_service。据我所知,我的 python 版本不需要 __init__.py,但我也尝试过它。 错误

ModuleNotFoundError: No module named 'project'

麻烦你一劳永逸的给我解决!

始终 运行 py.test 来自您的 project 目录。

因为从那个目录它实际上可以找到my_service.


有关详细信息,请阅读语言参考文档中的相关导入。