IPython Notebook会话中有多个目录和/或子目录?

发布于 2021-01-29 15:14:30

IPython文档页面建议打开IPython
Notebook的几个不同的会话是与不同目录或子目录中保存的Notebook进行交互的唯一方法,但这在任何地方都没有明确确认。

我面临一种情况,我可能需要与数百个不同的笔记本进行交互,这些笔记本根据不同的属性进行分类并存储在主目录的子目录中。我已经将配置文件/main中的主目录(我们称之为)ipython_notebook_config.py设置为默认目录。

当我启动IPython notebook时,的确会显示其中的所有已保存笔记本/main(但 不会 显示内子目录中的已保存笔记本/main)。

如何实现一个单一的IPython仪表板,该仪表板向我显示其中的笔记本/main
显示子目录,让我展开一个子目录并从其内容中选择,还是仅显示所有子目录中的所有笔记本?

通过每次启动IPython的新实例来执行此操作完全是不可能的。

如果愿意,我愿意修改源代码。这是一种非常基本的功能,我们需要它,而且令人惊讶的是它不仅是默认的IPython行为。对于保存的笔记本数量超过10或15,此功能是
必需的

关注者
0
被浏览
52
1 个回答
  • 面试哥
    面试哥 2021-01-29
    为面试而生,有面试问题,就找面试哥。

    IPython文档页面建议打开IPython
    Notebook的几个不同的会话是与不同目录或子目录中保存的Notebook进行交互的唯一方法,但这在任何地方都没有明确确认。

    是的,这是笔记本服务器的当前( 临时
    )限制。笔记本待办事项列表上的多目录支持非常高(不幸的是,该列表很长,而开发人员很少并且有日常工作),但还不存在。到0.14(可能是秋天),您应该没有理由运行多台nb服务器,但是目前,这是多个目录的唯一选择。一个简单的初稿所缺少的是:

    1. 将单个笔记本与目录相关联(相当琐碎),以及
    2. 用于简单文件系统导航的Web UI(略微平凡)。

    如果愿意,我愿意修改源代码

    如果要在源代码中浏览,则限制因素是NotebookManager,它与特定目录相关联。如果您调整list_notebooks()方法来处理子目录,那么您在那里的占90%。

    我也对此感到很好奇,因此我在这里整理了一个简单的示例,使您至少可以在子目录中读取/运行/编辑/保存笔记本(步行深度限制为2,但易于更改)。任何新笔记本都将位于顶层目录中,并且没有用于移动它们的UI。



知识点
面圈网VIP题库

面圈网VIP题库全新上线,海量真题题库资源。 90大类考试,超10万份考试真题开放下载啦

去下载看看