我有一个python脚本,想要在其父目录的同一级别的目录中导入另一个.py
文件,该文件系统如下所示
.
├── __init__.py
├── obslib
│ ├── __init__.py
│ └── jet
│ ├── __init__.py
│ ├── fakepdf.py
│ ├── fakepdf.pyc
│ ├── jet_mellin.py
│ ├── reader.py
│ ├── residuals.py
│ ├── theory.py
│ └── theory.pyc
├── readme.md
└── tools
├── README.md
├── __init__.py
├── __init__.pyc
├── bar.py
├── config.py
├── inputmod.py
├── multiproc.py
├── parallel.py
├── randomstr.py
├── reader.py
├── residuals.py
├── storage.py
└── tools.py
目录jet_mellin.py
中的文件jet
要导入,例如目录BAR
中bar.py
中的类tools
,只需写< / p>
from tools.bar import BAR
但是,我收到错误消息
ImportError: No module named tools.bar
然后我尝试了
from ..tools import bar
并获得
ValueError: Attempted relative import in non-package
让它起作用的唯一方法就是关注
import sys
sys.path.insert(0, '../../tools/')
from bar import BAR
但是,如果我想在其他目录中使用另一个也称为bar.py
的脚本,则会导致模棱两可的情况。因此,我希望能够像from ..tools import bar
中那样指定导入的路径。你能帮我这个忙吗?预先感谢!