什么是ipython笔记本"终端"菜单选项

Gre*_*son 23 ipython-notebook

我在我的OSX机器和/或我的ubuntu 14.04机器上运行ipython笔记本.我正在使用ipython 3.0.0和ipython(jupyter)笔记本.

当我启动ipython笔记本时,在New下有一个终端选项,但它对我来说不可用.我无法找到有关此功能的任何文档,如何激活它或它的功能.该ipython notebook --help命令没有提及它,我也没有在文档中找到任何内容.我还没有发现搜索谷歌获取任何信息的特殊关键字.

这个功能有什么作用?我该如何激活它?有没有关于此的文件?

在此输入图像描述

小智 14

IPython/Jupyter似乎支持基于浏览器的交互式终端会话.通过terminado使用pip或安装软件包在我的机器上启用此功能conda.这会修复下拉列表中的"终端不可用"消息,并允许我在新选项卡中启动(bash)终端会话.

看到这个提交: GitHub上的IPython

  • Windows不支持@whytheq终端 (2认同)

iva*_*eev 6

这是Lib/site-packages/IPython/html/notebookapp.py负责这个项目的代码(通过搜索"终端"的源代码来定位文件):

def init_terminals(self):
    try:
        from .terminal import initialize
        initialize(self.web_app)
        self.web_app.settings['terminals_available'] = True
    except ImportError as e:
        log = self.log.debug if sys.platform == 'win32' else self.log.warn
        log("Terminals not available (error was %s)", e)
Run Code Online (Sandbox Code Playgroud)

正如您所看到的,控制台日志中应该有一条消息指出出错的地方(您可能需要增加日志详细程度ipython notebook --log-level=<level>才能看到它).就我而言,它说:

终端不可用(错误是没有模块名为fcntl)

html.terminal正在导入的模块似乎提供基于Web的IPython交互式控制台.

  • 如果从@ivan_pozdeev评论中不清楚,则无法从Windows获得浏览器终端功能.请参阅[Jupyter /笔记本问题#172](https://github.com/jupyter/notebook/issues/172). (4认同)
  • @Gomes无,`fcntl` API是特定于UNIX的.请参阅http://stackoverflow.com/questions/1422368/fcntl-substitute-on-windows. (2认同)