首页 > 解决方案 > 如何将 python 模块从不同的目录导入到 jupyter notebook

问题描述

我有一个项目,其结构如下:

/project
    /src
        __init__.py
        my_module.py
    /notebooks
        my_notebook.ipynb

我想导入my_module.pymy_notebook.ipynb所以我首先尝试import src.my_module获取ModuleNotFoundError: No module named 'src'from ..src import my_module获取ImportError: attempted relative import with no known parent package。从几个类似的主题中,我发现将/project位置添加到 SYSPATH 将是一种快速破解,并且确实有效:

import sys
sys.path.insert(1, '/project')
from src import my_module

但是,干扰 SYSPATH 似乎是一种讨厌的方式,我想知道 - 是否存在更安全/更清洁的解决方案。另外,我不太明白为什么一开始from ..src import my_module就不起作用?

标签: pythonmodulepackage

解决方案


推荐阅读