我有一个这样的目录结构:
dir/
frontend.py
dir1/main.py
dir2/backend.py
- 如何在 Python 的 main 中导入后端?
- 如何在 Python 的 main 中导入前端?
已经尝试过 Stackoverflow 上的所有答案。似乎没有任何效果。
我有一个这样的目录结构:
dir/
frontend.py
dir1/main.py
dir2/backend.py
已经尝试过 Stackoverflow 上的所有答案。似乎没有任何效果。
在您要从中导入源文件的任何文件夹中,您需要有现有的init .py 文件。
我建议结构如下:
dir/
main.py
dir1/frontend.py
dir1/__init__.py
dir2/backend.py
dir2/__init__.py
然后以下列方式导入它们(在 main.py 中):
import dir1.frontend
import dir2.backend
在Python 项目中导入文件时只有一条规则。
您必须将包导入relative
到directory
运行项目的位置。
例如在问题中main.py
应该有这样的东西:
from dir.frontend import *
from dir.dir2.backend import *
但是你必须有类似main.py
under dir/
which importsdir/dir1/main.py
然后运行的东西python main.py
。
所以,尽量保持main.py
总是在,head directory
这样你就不必担心上面的这种情况。
只有一个规则: Everything has to be imported relatively to the directory from where the project is run.