我的项目树是这样的:
maindir\
dir1\
MAINSCRIPT.py
dir2\
scriptA.py
MAINSCRIPT.py
是我的主要脚本!
如何从scriptA.py
MAINSCRIPT.py
答案 0 :(得分:3)
首先,这不是技术上的python包,或者每个文件夹中都有__init__.py
。而且我很困惑你为什么要把你的主程序放在你的一个文件夹中。但是我经常用来导入一个不在Python定期检查路径中的文件是
import sys; sys.path.insert(0, '../dir2'); import scriptA
希望有所帮助! 有关详细信息:more on path insertion
答案 1 :(得分:1)
以下很好的解决方案来自ImportError: attempted relative import with no known parent package
您可以使用相对导入。首先更改目录结构,如下所示:
maindir\
main.py
lib\
__init__.py
dir1\
__init__.py
MAINSCRIPT.py
dir2\
__init__.py
scriptA.py
<强> MAINDIR \ lib中\ DIR1 \ MAINSCRIPT.py 强>
from ..dir2 import scriptA
...
<强> MAINDIR \ main.py 强>
import lib.dir1.MAINSCRIPT
现在,我们可以从maindir\
:
python main.py