如何访问目录外的模块?例如,我想访问文件夹X
:中abc.py
内xyz.py
的函数
- Project/
-> X -|
|-> abc.py
|-> lmn.py
-> xyz.py
仅仅在abc.py
中写入from xyz import func
或from Project.xyz import func
是不起作用的。我也参考了其他一些解决方案,并尝试使用系统设置路径,但即使这样也不起作用:
import sys
sys.path.insert(0,'path/to/Project')
from xyz import func
您使用的是什么版本的python?
如果你使用的是旧版本,你可能需要在项目/级别添加一个__init__.py
文件,比如
- Project/
-> __init__.py
-> X -|
|-> abc.py
|-> lmn.py
-> xyz.py
Python 3.3+应该有隐式的命名空间包,但在此之前,您需要添加init文件来导入它,并将其视为一个模块。
尝试以下操作:
import sys
sys.path.append("..")
from ..xyz import func