Python项目结构,导入问题
到目前为止,我的项目结构:Python项目结构,导入问题,python,python-3.x,Python,Python 3.x,到目前为止,我的项目结构: Project/ |-- crypto/ | |-- one.py | | two.py |-- utils/ | |-- util1.py | | util2.py .... 在这些文件中,我一直在这样导入: # within one.py from utils.util1 import xy from lib.utils.util1 import xy 现在我想构建一个使用大多数python脚本的Web服务,我想将它们移动到一个单独的
Project/
|-- crypto/
| |-- one.py
| | two.py
|-- utils/
| |-- util1.py
| | util2.py
....
在这些文件中,我一直在这样导入:
# within one.py
from utils.util1 import xy
from lib.utils.util1 import xy
现在我想构建一个使用大多数python脚本的Web服务,我想将它们移动到一个单独的文件夹中:
Project/
|-- service.py
|-- lib/
| |-- crypto/
| | |-- one.py
| | | two.py
| |-- utils/
| | |-- util1.py
| | | util2.py
| ....
我的问题是,现在,我必须将每个文件中的所有导入语句修改为如下内容:
# within one.py
from utils.util1 import xy
from lib.utils.util1 import xy
有什么方法可以避免这种情况吗?如果将
lib
文件夹添加到PYTHONPATH环境变量中,那么您的模块将在不更改源文件的情况下可用。
格式与shell的路径相同
更多信息:如果将
lib
文件夹添加到PYTHONPATH环境变量中,则您的模块将在不更改源文件的情况下可用。
格式与shell的路径相同
更多信息:但请注意,您必须在每个想要使用此功能的系统上执行此操作。因此,如果您在github上共享它或将它迁移到较新的系统,那么不要忘记这样做,并为其他人记录这一点。最好提供.sh或.cmd脚本来启动像这样的非平凡环境。但请记住,您必须在每个想使用它的系统上都这样做。所以,如果您在github上共享它或将它迁移到较新的系统,那么不要忘记这样做,并为其他人记录这一点。最好提供.sh或.cmd脚本来启动这样的非平凡环境。