我正在运行Python 2.5。
这是我的文件夹树:
ptdraft/
nib.py
simulations/
life/
life.py
(每个文件夹中都有__init__.py
,为了可读性已省略)
我应该如何从life
模块内部导入nib
模块?我希望能在不修改sys.path的情况下完成。
注意:正在运行的主模块位于ptdraft
文件夹中。
我正在运行Python 2.5。
这是我的文件夹树:
ptdraft/
nib.py
simulations/
life/
life.py
(每个文件夹中都有__init__.py
,为了可读性已省略)
我应该如何从life
模块内部导入nib
模块?我希望能在不修改sys.path的情况下完成。
注意:正在运行的主模块位于ptdraft
文件夹中。
[tool.pytest.ini_options]
testpaths = ["tests"]
pythonpath = ["."]
背景:项目中有两个层级深的测试文件夹,试图从根项目路径导入主要代码(意思是没有src
文件夹或类似的)。
需要使其能够与命令行界面(CLI)兼容、与操作系统无关、与集成开发环境(IDE)无关,并且需要能够在 Docker 中使用相同的导入语句进行导入。这对我来说可以从更高的文件夹导入东西。
import os
os.chdir('..')
__init__.py
文件了。S.Lott: 我不知道该如何检查... - Ram Rachumsys.path
或者PYTHONPATH
的答案,查看 np8 的优秀回答。是的,它很长。是的,看起来需要很多工作。但这是唯一一个真正正确且干净地解决问题的答案。 - Aran-Fey