我有一个通过
启动的ippython内核ipython kernel
这让我可以选择从不同的客户端(控制台,qtconsole或甚至从其他机器通过ssh连接到这个内核。
最简单的情况是通过本地连接:
ipython qtconsole --existing kernel-xxxx.json
但是如果我现在想重新启动内核(通常通过qtconsole中的Ctrl+.
),我得到消息:
Cannot restart a Kernel I did not start
这是合乎逻辑的,但我的问题是:
- 是否有办法通过连接的客户端重新启动IPython内核?
或者,如果不可能:
- 是否有办法通过其他命令触发内核的重启?(从本地控制台,而不是连接的客户端)。
我不是在寻找一种退出ipython kernel
进程的方法(可以通过Ctrl+
完成),但只是重新启动内核而不改变内核id。
关于我的Python环境的一些信息:
python -c "import IPython; print(IPython.sys_info())"
{'commit_hash': u'2d95975',
'commit_source': 'repository',
'default_encoding': 'UTF-8',
'ipython_path': '/something/gits/ipython/IPython',
'ipython_version': '3.2.1',
'os_name': 'posix',
'platform': 'Linux-3.16.0-4-amd64-x86_64-with-debian-8.0',
'sys_executable': '/usr/bin/python',
'sys_platform': 'linux2',
'sys_version': '2.7.9 (default, Mar 1 2015, 12:57:24) n[GCC 4.9.2]'}
目前不可能从没有启动内核的前端重新启动内核。这是我们计划在某个时候消除的限制- IPEP 12涉及这些计划。