Python-导入文件夹外的模块
我正试图从Python-导入文件夹外的模块,python,python-3.x,module,directory,python-import,Python,Python 3.x,Module,Directory,Python Import,我正试图从a.py中的模块目录外导入模块。目录如下所示: .project ├── folder_1 │ └── a.py | ├── folder_2 │ ├── __init__.py │ └── b.py 我在a.py中的代码 #contents of a.py from ..folder_2 import b.py 但由此我得到了一个错误:ImportError:尝试在没有已知父包的情况下进行相对导入 我已经为这个问题寻找了一个解决方案很长一段时间了,但是我没有找到任何有
a.py
中的模块目录外导入模块。目录如下所示:
.project
├── folder_1
│ └── a.py
|
├── folder_2
│ ├── __init__.py
│ └── b.py
我在a.py中的代码
#contents of a.py
from ..folder_2 import b.py
但由此我得到了一个错误:ImportError:尝试在没有已知父包的情况下进行相对导入
我已经为这个问题寻找了一个解决方案很长一段时间了,但是我没有找到任何有帮助的方法。感谢您的帮助或见解。采用以下结构:
├── project
├── __init__.py
├── folder_1
│ ├── __init__.py
│ └── a.py
├── folder_2
│ ├── __init__.py
│ └── b.py
└── main.py
您的a.py
在执行main.py
时不会抱怨:
from project.folder_1 import a
由于project
是main.py
和folder_1
和folder_2
的包,因此您可以使用
如果要直接执行a.py
,只需执行以下操作:
import sys
sys.path.append('..')
from folder_2 import b
如何将路径添加到
sys.path
?我不完全确定如何使用sys.path
,但如果你能,请举个例子?