首页 > 解决方案 > 设置 ipython 内核启动的路径(不是 jupyter)

问题描述

我的项目文件夹如下所示(简化):

projectRoot/
  -notebooks/
    -some_notebook.ipynb
  -pythonlibs/
    -somemodule/
      -__init__.py

从文件夹jupyter notebook运行。projectRoot在 jupyter 网络界面中,我看到了两个文件夹:

notebooks/
pythonlibs/

到目前为止,一切都很好。

当我打开时,some_notebook.ipynb我不能仅仅import pythonlibs.somemodule as sm 因为内核在子文件夹中启动notebooks并且该pythonlibs文件夹无法访问。

我如何告诉jupyter也启动(ipython)内核projectRoot,而不仅仅是它本身?

换句话说:如果它直接包含在子文件夹some_notebook.ipynb中,如何启动它?notebooksprojectRoot

我目前做的事情:

import sys, os, pathlib as pl
current_path = pl.Path(os.path.dirname(os.path.realpath("__file__")))
sys.path.insert(0, str(current_path.parent))

有效,但我必须将其插入到projectRoot. 也似乎不是一个很干净的做事方式。:-(

我不想做的事情:将所有笔记本直接放在projectRoot文件夹中。我想保持井井有条...

我的机器、操作系统等:Windows 10、Python 3.9(最新稳定版)projectRoot也是venv.

标签: jupyter-notebookipythonpython-import

解决方案


推荐阅读