在同级目录中进行相对导入时遇到问题

时间:2019-05-30 15:57:18

标签: python python-3.x python-import

从同级目录导入时遇到问题。

我想设置我的软件包,以便所有这些方面同时起作用。

这是我的模块设置:

package/
    __init__.py
    code/
        __init__.py
        model.py
        helper.py
    notebooks/
        __init__.py
        notebook1.ipynb

model.py中的导入:

from helper import *

从包中的命令行运行时,我设置PYTHONPATH =。我可以运行model.py

notebook1.ipynb中的导入:

第一种情况

sys.path.insert(0, os.path.abspath('..'))
from code.model import MetaModel

结果在:ModuleNotFoundError:没有名为“ code.model”的模块; “代码”不是程序包

第二种情况

sys.path.insert(0, os.path.abspath(os.path.join('../code')))
from model import MetaModel

这有效。为什么我不能使用第一种情况。

0 个答案:

没有答案
相关问题