使用来自单元格的命令重新启动ipython内核

peb*_*x11 17 ipython jupyter jupyter-notebook

是否可以ipython通过从笔记本GUI中选择Kernel> 来重新启动内核Restart,而不是在笔记本单元中执行命令?

peb*_*x11 15

正如Thomas K.建议的那样,这是ipython从键盘重启内核的方法:

import os
os._exit(00)
Run Code Online (Sandbox Code Playgroud)

  • 在我的例子中,这将退出 ipython,而不是重新启动它。 (6认同)
  • @azzamsa 它退出并自动重新启动内核。就我而言,问题是我仍然需要单击弹出消息来重新启动内核。 (4认同)
  • 另一种可能性是直接调用kernel.restart()方法,如/sf/answers/3293882371/中所述 (3认同)

Fer*_*ann 8

如果你使用的是 jupyter,还有这个选项:

%reset -f
Run Code Online (Sandbox Code Playgroud)

这不会完全重新启动,只是重置所有变量,这有时正是我们想要的。


小智 6

为了成功定义重新启动Jupyter内核的函数,我已经成功使用了:

from IPython.display import display_html
def restartkernel() :
    display_html("<script>Jupyter.notebook.kernel.restart()</script>",raw=True)
Run Code Online (Sandbox Code Playgroud)

然后打电话

restartkernel()
Run Code Online (Sandbox Code Playgroud)

何时重新启动。

  • 它不会重新启动内核。 (2认同)

use*_*692 6

import IPython

IPython.Application.instance().kernel.do_shutdown(True) #automatically restarts kernel
Run Code Online (Sandbox Code Playgroud)