Подтвердить что ты не робот

Несколько каталогов и/или подкаталогов в сеансе IPython Notebook?

Страницы документации IPython предполагают, что открытие нескольких разных сеансов IPython-ноутбука - это единственный способ взаимодействия с сохраненными записными книжками в разных каталогах или подкаталогах, но это явно не подтверждено нигде.

Я столкнулся с ситуацией, когда мне может потребоваться взаимодействие с сотнями разных ноутбуков, которые классифицируются по разным свойствам и хранятся в подкаталогах основного каталога. Я установил этот основной каталог (позвольте ему /main) в файле конфигурации ipython_notebook_config.py стать каталогом по умолчанию.

Когда я запускаю ноутбук IPython, на самом деле он отображает любые сохраненные записные книжки, которые находятся в пределах /main (но не сохранены записные книжки в подкаталогах внутри /main).

Как я могу получить одну панель управления IPython, которая показывает мне ноутбуки в /main, а также показывает подкаталоги, позволяет мне расширять подкаталог и выбирать из его содержимого или просто отображать все ноутбуки из всех подкаталогов?

Выполнение этого путем запуска новых экземпляров IPython каждый раз полностью не может быть и речи.

Я хочу поработать с исходным кодом, если мне нужно это средство. Это чрезвычайно простая функция, она нам нужна, и это удивительно, что это не просто поведение IPython по умолчанию. Для любого количества сохраненных ноутбуков, возможно, 10 или 15, эта функция необходима.

4b9b3361

Ответ 1

Страницы документации IPython предполагают, что открытие нескольких разных сеансов IPython-ноутбука - это единственный способ взаимодействия с сохраненными записными книжками в разных каталогах или подкаталогах, но это явно не подтверждено нигде.

Да, это текущее (временное) ограничение сервера Notebook. Поддержка нескольких каталогов очень высока в списке задач для ноутбуков (к сожалению, этот список длинный, а у разработчиков мало и есть дневные задания), его просто нет. На 0.14 (возможно, Fall) у вас не должно быть причин запускать более одного сервера nb, но теперь это единственный вариант для нескольких каталогов. Все, что отсутствует для простого первого черновика:

  • Сопоставление отдельных ноутбуков с каталогами (довольно тривиально) и
  • Веб-интерфейс для простой навигации по файловой системе (немного менее тривиальный).

Я готов возиться с исходным кодом, если мне нужно это умение

Ограничивающий фактор, если вы хотите совать в источнике, NotebookManager, который связан с определенным каталогом. Если вы настроите метод list_notebooks() для обработки подкаталогов, вы там на 90%.

Мне тоже было интересно, поэтому я бросил быстрый пример здесь, который позволяет по крайней мере читать/запускать/редактировать/сохранить записные книжки в поддирерах (глубина ходьбы ограничена 2, но легко меняться). Любые новые ноутбуки будут находиться в директории верхнего уровня, и нет никакого интерфейса для их перемещения.

Ответ 2

Проблемы с интерфейсом и архитектурой для поддержки нескольких каталогов (и в целом для поддержки "проекта" ) для ноутбука iPython важны для правильного. Конструкция описана в

IPEP 16: панель управления несколькими каталогами и URL-адресом для ноутбуков

и обсуждается в IPEP 16: панель управления несколькими каталогами ноутбуков и URL-адреса · Проблема № 3166 · ipython/ipython