Ядра iPython и среды Anaconda - PullRequest
0 голосов
/ 06 июня 2018

Я хотел установить оба ядра Python 2 и Python 3 для моего ноутбука Jupyter, поэтому я следовал приведенным здесь инструкциям http://ipython.readthedocs.io/en/stable/install/kernel_install.html, используя conda.Изначально у меня было только ядро ​​Python 3, поэтому я установил Python 2 с:

conda create -n ipykernel_py2 python=2 ipykernel
source activate ipykernel_py2  
python -m ipykernel install --user

Теперь у меня есть новая среда ipykernel_py2 в Anaconda, и у меня есть ядро ​​Python 2, доступное в Jupyter.Однако я понял, что даже в исходной базовой (корневой) среде у меня все еще есть Python 2.Теперь я немного запутался, поскольку, насколько я помню, это установка новой среды conda, и я должен иметь доступ к ядру Python 2 только в среде ipykernel_py2.

Когда я использую ядро ​​Python 2 в Jupyter, он действует так, как будто он находится в своей собственной среде: пакеты, такие как pandas / matplotlib, которые я установил в исходной базовой (корневой) среде, не установлены в среде ядра Python 2.

Может ли кто-нибудь объяснить мне, почему ядро ​​Python 2 доступно даже вне среды ipykernel_py2?Это как-то связано с установленным файлом спецификации ядра?(упомянуто по ссылке).

1 Ответ

0 голосов
/ 12 марта 2019

Вы не устанавливаете ядро ​​ipython с python -m ipykernel install --user.Эта команда фактически устанавливает спецификацию ядра для соответствующего ядра.Само ядро ​​устанавливается из пакета ipykernel.Вы сделали это при создании среды: conda create -n ipykernel_py2 python=2 ipykernel.

Возможно, ядро ​​ipython находится в среде, которая отличается от вашей среды Jupyter.Это абсолютно нормально.Когда вы выбираете его в Jupyter, спецификация ядра будет указывать на ядро ​​в другой среде, и он будет выполняться интерпретатором в этой целевой среде.Контекст выполнения будет соответствовать среде с ядром, а не среде Jupyter.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...