我正在使用project,其中源树中的所有代码都被分成模块目录,例如:
modules/check/lib/check.py
modules/edit/lib/edit.py
在安装过程中,Python文件放在Python program_name
下的同一目录site-packages
中。因此,所有模块都使用语法import program_name.edit
。
由于目录和导入结构,源模块无法相互导入,因此每次要在源树中运行任何内容时都必须安装它们。
因此,我的问题是:如果不修改目录结构,我如何确保从modules/check/lib/check.py
导入modules/edit/lib/edit.py
以及从site-packages/program_name/check.py
导入site-packages/program_name/edit.py
?对于可能的重组,在这样的环境中,目录结构和导入的最佳实践是什么?
答案 0 :(得分:2)
您可以在开发环境中将/modules/
目录添加到PYTHONPATH。一旦安装在site-packages中,在check.py中调用import edit
将导入正确的模块,因为它们位于同一目录中。从您的开发环境中调用import edit
将导入您添加到PYTHONPATH的那个
答案 1 :(得分:0)
为什么不在开发机器上的prog_name
下面安装符号链接?