[英]Python imports with different directory structures
我正在开发一个项目 ,其中源树中的所有代码都分成模块目录,例如:
modules/check/lib/check.py
modules/edit/lib/edit.py
在安装过程中,Python文件放在Python的site-packages
下的同一目录program_name
。 因此,所有模块都使用语法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
? 对于可能的重组,在这样的环境中,目录结构和导入的最佳实践是什么?
您可以在开发环境中将/modules/
目录添加到PYTHONPATH。 一旦安装在site-packages中,在check.py中调用import edit
将导入正确的模块,因为它们位于同一目录中。 从您的开发环境调用import edit
将导入您添加到PYTHONPATH的import edit
为什么不在dev机器上的prog_name
下面安装符号链接?
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.