Вопрос по python, subdirectories, ipython, directory – Несколько каталогов и / или подкаталогов в сеансе IPython Notebook?

31

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

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

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

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

Делать это, запуская новые экземпляры IPython каждый раз, совершенно невозможно.

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

Сервер ноутбука сможет просматривать разные каталоги, он просто не был реализованyet, Если это важно для вас, вы можете прийти и помочь написать его, хотя мы только готовимся к следующему релизу, так что он, вероятно, не войдет до этого. Thomas K

Ваш Ответ

2   ответа
21

The IPython documentation pages suggest that opening several different sessions of IPython notebook is the only way to interact with saved notebooks in different directories or subdirectories, but this is not explicitly confirmed anywhere.

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

  1. Associating individual notebooks with directories (fairly trivial), and
  2. Web UI for simple filesystem navigation (slightly less trivial).

I'm willing to tinker with source code if I have to for this ability

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

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

Этот ответ теперь не имеет значения, так как IPython 1.0 поддерживает навигацию по каталогам. Я прикрепил ссылку NotebookManager к 0.13, которая была актуальна в то время.
ссылки не работают
2

Вопросы дизайна интерфейса и архитектуры для поддержки нескольких каталогов (и в целом для «поддержки проекта») для ноутбуков iPython важны для правильного решения. Дизайн описан в

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

и обсуждается вIPEP 16: панель инструментов для нескольких каталогов ноутбука и сопоставление URL & # xB7; Проблема № 3166 & # xB7; IPython / IPython

Похожие вопросы