使用Qt控制台连接到现有的IPython内核#

前端/内核模型#

传统的IPython (ipython )由单个进程组成,该进程将基于终端的UI与运行用户代码的进程相结合。

虽然这种传统的应用程序仍然存在,但现代的木星由两个过程组成:

  • 内核:这是运行用户代码的进程。

  • 前端:这是提供用户界面的过程,用户可以在其中键入代码并查看结果。

木星目前有3个前锋:

  • 终端控制台 (jupyter console )

  • Qt控制台 (jupyter qtconsole )

  • 笔记本电脑 (jupyter notebook )

内核和前端通过基于ZeroMQ/JSON的消息传递协议进行通信,该协议允许多个前端(即使是不同类型的)与单个内核进行通信。这为各种有趣的事情打开了大门,比如将控制台或Qt控制台连接到笔记本的内核。例如,您可能希望将Qt控制台连接到Notebook的内核,并将其用作帮助浏览器,调用 ?? 在Qt控制台中的对象上(其寻呼机比笔记本中的更灵活)。

本笔记本介绍如何将另一个前端连接到与笔记本关联的IPython内核。这里当前给出的命令是特定于IPython内核的。

手动连接#

要手动将另一个前端连接到某个内核,您首先需要使用 %connect_info 魔力:

[ ]:
%connect_info

您可以看到,此魔术显示了连接到此笔记本的内核所需的所有内容。

使用新的Qt控制台自动连接#

您还可以启动连接到当前内核的新Qt控制台 %qtconsole 魔法。这将检测必要的连接信息,并为您自动启动Qt控制台。

[ ]:
a = 10
[ ]:
%qtconsole