jupyter:没有名为 python3 的内核

jupyter: No such kernel named python3

我想在 pycharm 中 运行 jupyter,但遇到错误:没有名为 python3.

的内核

我只安装了 Anaconda(Python3 64 位版本)并将其用作 pycharm 项目解释器。

......

Jupyter kernelspec 列表显示如下:

感谢任何帮助!!

我遇到了同样的问题。 我像你一样通过 Anaconda 使用 jupyter。 似乎 PyCharm 尝试 运行 默认命名为 "python3" 的引擎,但它在 anaconda 默认安装中被命名为 "Python[Root]"。

经过几次调试,问题似乎是:

  • 在 PyCharm 中默认使用 NATIVE_KERNEL_NAME 代替名为 "Python [Root]"
  • 的默认 conda 内核
  • 或者在 conda CondaKernelSpecManager.find_kernel_specs 中删除默认本机内核名称的方法显然没有充分的理由,无论如何,以一种糟糕的方式

对于简短的回答,我已经通过手动编辑解决了

anaconda3/lib/python3.5/site-packages/nb_conda_kernels/manager.py

这可能不是最好的选择,但目前可行

def find_kernel_specs(self):
    """Returns a dict mapping kernel names to resource directories.

    The update process also add the resource dir for the conda
    environments.
    """

    kspecs = super(CondaKernelSpecManager, self).find_kernel_specs()

    # COMMENT THIS
    # remove native kernels because it is provided by the env name
    # if "python3" in kspecs:
    #     kspecs.pop("python3")
    # elif "python2" in kspecs:
    #     kspecs.pop("python2")
    # elif "R" in kspecs

https://github.com/ContinuumIO/anaconda-issues/issues/936

我们已经通过官方 Anaconda conda 存储库发布了 nb_condanb_conda_kernelsnb_anacondacloud 版本,应该可以解决您遇到的问题!

shell conda update nb_conda nb_conda_kernels nb_anacondacloud

符合 default 条件的已安装内核名称(例如 python2python3ir 等)将保持不变,因此它们应该总是出现在那里。

缺点是当前环境有多达三个选项,即如果你在 root 中,你将看到 Python 2 Python [root]Python [默认],您现在可以重复捕获您的内核应该 运行 针对哪个环境。

元:https://github.com/Anaconda-Platform/anaconda-nb-extensions/issues/166

这为我解决了问题:

 conda install nb_conda_kernels