jupyter: нет такого ядра с именем python3
2 ответа
Мы выпустили версии nb_conda
, nb_conda_kernels
а также nb_anacondacloud
через официальные репозитории Anaconda conda, которые должны решить проблемы, которые вы видите!
shell
conda update nb_conda nb_conda_kernels nb_anacondacloud
Установленные имена ядра, которые могут быть default
(например python2
, python3
, ir
и т. д.) будут сохраняться неизмененными, поэтому они всегда должны появляться там.
Недостатком является три варианта для текущей среды env, то есть если вы находитесь в root, вы увидите Python 2 и Python [root] и Python [default], теперь вы можете воспроизводимо захватить, в какой среде должно работать ваше ядро.
мета: https://github.com/Anaconda-Platform/anaconda-nb-extensions/issues/166
Я была такая же проблема. Я использую Юпитера через Анаконду, как и вы. Похоже, что PyCharm пытается запустить движок с именем по умолчанию "python3", но он называется "Python[Root]" при установке по умолчанию в anaconda.
После нескольких отладок проблема выглядит так:
- В PyCharm, который по умолчанию использует NATIVE_KERNEL_NAME вместо стандартного ядра conda с именем "Python[Root]"
- Или в методах conda CondaKernelSpecManager.find_kernel_specs, которые по умолчанию удаляют собственные имена ядра, по-видимому, без веской причины и, во всяком случае, плохим
Для краткого ответа я работал, редактируя вручную
anaconda3/ Библиотека /python3.5/ сайт-пакеты /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
Это решенная проблема для меня:
conda install nb_conda_kernels