使用不同目录中的类

时间:2019-02-27 22:22:50

标签: python-3.x jupyter-notebook

[Python 3.5.2,Docker容器]

我在名为Metrics.py的文件中有一个BCM类,我想在不同目录中的多个Jupyter笔记本中使用。当它们在同一文件中时,显然from metrics import BCM可以使用以下内容。我希望它可以与以下目录结构一起使用。

experiments\
    common\
        __init__.py
        metrics.py
    exp1\
        glm.ipynb
    exp2\
        gbm.ipynb

如果我执行以下操作,它将起作用

import os, sys

module_path = os.path.abspath(os.path.join('..'))
if module_path not in sys.path:
    sys.path.append(module_path)

from common.metrics import BCM

根据我在这里看到的帖子,以下内容似乎应该有效from ..common.metrics import BCM。我收到以下错误SystemError: Parent module '' not loaded, cannot perform relative import

有没有一种方法可以使用该类而不更改上面所示的路径?

0 个答案:

没有答案