ipython - 获取所有内核的列表(用户+默认)

时间:2017-04-22 16:16:39

标签: python ipython jupyter

我正在寻找一种方法来以编程方式(而不是通过命令行)获取系统中所有已安装的ipython内核名称的列表(或字典)。到目前为止,我有这个:

from jupyter_client.kernelspecapp import KernelSpecManager
print(KernelSpecManager().find_kernel_specs())

或(但它给出了弃用警告):

from IPython.kernel.kernelspec import find_kernel_specs
print(find_kernel_specs())

还有一种使用ipykernel的方法,但还没有找到任何文档。

以上所有内容都为我提供了一个字典,其中包含我使用ipykernel安装的内核,但不是笔记本中显示的默认内核(例如Python 3):

{'lab2': '/home/alex/.local/share/jupyter/kernels/lab2',
 'lab3': '/home/alex/.local/share/jupyter/kernels/lab3',
 'python2': '/usr/local/share/jupyter/kernels/python2'}

有没有办法获取所有内核的列表?

1 个答案:

答案 0 :(得分:0)

当我按照与上面略有不同的步骤进行操作时,我看到了python3内核。我正在安装Jupyter 4.4.0的情况下进行以下操作。

import jupyter_client
M = jupyter_client.kernelspec.KernelSpecManager()
M.find_kernel_specs()

它输出一个字典,内容如下。

{'javascript': '/Users/someone/Library/Jupyter/kernels/javascript', 'python3': '/anaconda3/share/jupyter/kernels/python3'}

Here's a link to the relevant docs.