Як додати ядро python3 до jupyter (IPython)

На моїх ноутбуках Jupyter встановлено ядро python 2. Я не розумію чому. Можливо, я щось наплутав під час встановлення. У мене вже встановлено python 3. Як мені додати його до Jupyter? Ось скріншот того, як виглядає стандартний Jupyter, встановлений за допомогою python3 -m install jupyter і відкритий в браузері за допомогою jupyter notebook:

Переконайтеся, що у вас встановлено ipykernel і використовуйте ipython kernel install, щоб скинути kernelspec в потрібне місце для python2. Потім ipython3 kernel install для Python3. Тепер ви зможете вибирати між 2 ядрами незалежно від того, чи використовуєте ви jupyter notebook, ipython notebook або ipython3 notebook (останні два ядра застаріли).

Зауважте, що якщо ви хочете встановити для конкретного виконуваного файлу Python, ви можете скористатися наступним трюком:

path/to/python -m ipykernel install 

Це працює при використанні оточень (venv,conda,...) і `дозволяє вам назвати ваше ядро (див.--help`). Таким чином, ви можете зробити

conda create -n py36-test python=3.6
source activate py36-test
python -m ipykernel install --name py36-test
source deactivate

І тепер ви отримаєте ядро з назвою py36-test у випадаючих меню, поряд з іншими.

Див. https://stackoverflow.com/questions/30492623/using-both-python-2-x-and-python-3-x-in-ipython-notebook, де наведено найсвіжішу інформацію.

Коментарі (14)

У мене був Python 2.7 і я хотів мати можливість перейти на Python 3 всередині Jupyter.

Ці кроки працювали для мене в командному рядку Windows Anaconda:

conda update conda
conda create -n py33 python=3.3 anaconda
activate py33
ipython kernelspec install-self
deactivate

Тепер після відкриття ipython notebook звичайною командою для Python2.7, Python3.3 також доступний при створенні нового блокнота.

Коментарі (1)

Мені вдалося встановити ядро Python3 на додаток до ядра Python2. Ось як я це зробив:

  • відкриваємо новий блокнот в Jupyter
  • скопіюйте і запустіть дві комірки тут: Enable-Python-3-kernel

Останнє робоче посилання можна знайти тут.

Фактичний код виглядає наступним чином:

! mkdir -p ~/.ipython/kernels/python3
%%file ~/.ipython/kernels/python3/kernel.json

{
 "display_name": "IPython (Python 3)", 
 "language": "python", 
 "argv": [
  "python3", 
  "-c", "from IPython.kernel.zmq.kernelapp import main; main()", 
  "-f", "{connection_file}"
 ], 
 "codemirror_mode": {
  "version": 2, 
  "name": "ipython"
 }
}
Коментарі (7)