Запретить ноутбукам Jupyter изменять cwd

Моя структура папок выглядит так:

- project/
  - notebooks/
    - notebook1.ipynb
  - src/
    - module1.py
    - __init__.py
  - data/
    - data.csv

Такой, что я могу отделить мой исходный код от фактического анализа. Я хотел бы иметь возможность импортировать модули из src и использовать их в notebook1Однако всякий раз, когда я открываю notebook1, Jupyter решает изменить мой рабочий каталог, чтобы быть внутри notebooks,

Это затрудняет поддержание моего импорта, так как мне придется импортировать вещи относительно прихоти Jupyter - есть ли способ исправить cwd такой, что это всегда projectНеважно, какой файл у меня открыт?

Я просмотрел документы и мои ~/.jupyter/jupyter_notebook_config.py, файл, но не нашли ничего, что могло бы мне помочь.

РЕДАКТИРОВАТЬ: я хотел бы не использовать os.chdir или же cd в верхней части каждого сценария.

Спасибо за любую помощь

1 ответ

Прежде всего, я думаю, что вы имеете в виду cwd, pwd это сокращение для print working directory, в то время как cwd это сокращение для current working directory, По сути, pwd печатает cwd, Просто небольшая проблема с терминологией!

Во-вторых, вы всегда можете вручную изменить каталог в верхней части блокнота:

import os
os.chdir("../")  # or manually specify project - whichever you prefer

Я не думаю, что есть какой-либо способ автоматически изменить поведение по умолчанию - возможно, было бы неплохо открыть проблему в git-репозитории ноутбука? https://github.com/jupyter/notebook

Другие вопросы по тегам