Как добавить ядро ​​python3 в jupyter (IPython)

Мои теги Jupyter, установленные с ядром python 2. Я не понимаю, почему. Я, возможно, что-то испортил, когда я сделал установку. У меня уже установлен python 3. Как добавить его в Jupyter? Здесь снимок экрана о том, что по умолчанию Jupyter не учитывается с python3 -m install jupyter и открыт в браузере с jupyter notebook, выглядит так: введите описание изображения здесь

Ответ 1

Это работало для меня на Ubuntu 16.04:

python2 -m pip install ipykernel
python2 -m ipykernel install --user

python3 -m pip install ipykernel
python3 -m ipykernel install --user

Ссылка на документацию:
Ядра для Python 2 и 3. Установка ядра IPython - Документы IPython.

Ответ 2

Убедитесь, что у вас установлен ipykernel и используйте ipython kernel install, чтобы удалить kernelspec в нужном месте для python2. Затем ipython3 kernel install для Python3. Теперь вы можете выбрать между двумя ядрами независимо от того, используете ли вы jupyter notebook, ipython notebook или ipython3 notebook (последние два устарели).

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

path/to/python -m ipykernel install <options>

Это работает при использовании сред (venv, conda,...) и <options> позволяет вам назвать ваше ядро ​​(см. --help). Таким образом, вы можете сделать

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

И теперь вы получаете ядро ​​с именем py36-test в выпадающих меню, а также другие.

См. Использование Python 2.x и Python 3.x в IPython Notebook, в котором представлена ​​более новая информация.

Ответ 3

  • Получил ipython ноутбук с Python2 (на Windows7)
  • обновление до Jupyter с помощью pip install -U jupyter
  • установить Python3
  • снова установите Jupyter с помощью pip3 install jupyter
  • установить ядро ​​Python3 с помощью ipython3 kernelspec install-self
  • Наконец-то я получил 2 рабочих ядра.

отличные результаты

Ответ 4

для последних версий jupyter/ipython: используйте jupyter kernelspec

список текущих ядер

$ jupyter kernelspec list
Available kernels:
  python2    .../Jupyter/kernels/python2
  python3    .../Jupyter/kernels/python3

В моем случае установка ядра python3 была прервана, так как ссылки на py3.5 больше не было, ее заменили на py3.6

добавить/удалить ядра

Удалить:

$ jupyter kernelspec uninstall python3

Добавить новый:

$ jupyter kernelspec install /usr/local/Cellar/python3/3.6.1/bin/

Чтобы найти папку, вы можете использовать which PYTHON, например, which python3.6 (или pyenv which python3.6, если вы используете pyenv!). Тогда

ls -la 'which python3.6' 

покажет вам, где находится исполняемый файл.

Перечислите снова:

$ jupyter kernelspec list
Available kernels:
  python3    /usr/local/lib/python3.6/site-packages/ipykernel/resources
  python2    /Users/stefano/Library/Jupyter/kernels/python2

Док.: https://jupyter-client.readthedocs.io/en/latest/kernels.html#kernelspecs

Подробнее

Доступные ядра перечислены в папке kernels в СПРАВОЧНИК ДАННЫХ Jupyter (подробнее см. http://jupyter.readthedocs.io/en/latest/projects/jupyter-directories.html).

Например, в Macosx это будет /Users/YOURUSERNAME/Library/Jupyter/kernels/

ядро просто описывается файлом kernel.json, например. для /Users/me/Library/Jupyter/kernels/python3/kernel.json

{
 "argv": [
  "/usr/local/opt/python3/bin/python3.5",
  "-m",
  "ipykernel",
  "-f",
  "{connection_file}"
 ],
 "language": "python",
 "display_name": "Python 3"
}

Вместо того, чтобы манипулировать этим вручную, вы можете использовать команду kernelspec (как указано выше). Ранее он был доступен через ipython, а теперь через jupyter (http://ipython.readthedocs.io/en/stable/install/kernel_install.html#kernels-for-different-environments - https://jupyter-client.readthedocs.io/en/latest/kernels.html#kernelspecs).

$ jupyter kernelspec help
Manage Jupyter kernel specifications.

Subcommands
-----------

Subcommands are launched as 'jupyter kernelspec cmd [args]'. For information on
using subcommand 'cmd', do: 'jupyter kernelspec cmd -h'.

list
    List installed kernel specifications.
install
    Install a kernel specification directory.
uninstall
    Alias for remove
remove
    Remove one or more Jupyter kernelspecs by name.
install-self
    [DEPRECATED] Install the IPython kernel spec directory for this Python.

To see all available configurables, use '--help-all'

Ядра для других языков

Кстати, не строго связан с этим вопросом, но есть много других доступных ядер... https://github.com/jupyter/jupyter/wiki/Jupyter-kernels

Ответ 5

Если вы используете дистрибутив anaconda, это сработало для меня (на macintosh):

$ conda create -n py3k python=3 anaconda

$ source activate py3k

$ ipython kernelspec install-self

Просто примечание для последней команды:

(py3k)Monas-MacBook-Pro:cs799 mona$ ipython kernelspec install-self
[TerminalIPythonApp] WARNING | Subcommand `ipython kernelspec` is deprecated and will be removed in future versions.
[TerminalIPythonApp] WARNING | You likely want to use `jupyter kernelspec` in the future
[InstallNativeKernelSpec] WARNING | `jupyter kernelspec install-self` is DEPRECATED as of 4.0. You probably want `ipython kernel install` to install the IPython kernelspec.
[InstallNativeKernelSpec] Installed kernelspec python3 in /usr/local/share/jupyter/kernels/python3
(py3k)Monas-MacBook-Pro:cs799 mona$ ipython kernel install 
Installed kernelspec python3 in /usr/local/share/jupyter/kernels/python3

Как было протестировано в OSX Yosemite с вышеуказанными шагами и входом jupter notebook и созданием нового ноутбука в браузере, вы увидите следующий снимок экрана: введите описание изображения здесь

Ответ 6

Я успешно установил ядро ​​python3 на macOS El Capitan (версия ipython: 4.1.0) со следующими командами.

python3 -m pip install ipykernel
python3 -m ipykernel install --user

Вы можете видеть все установленные ядра с помощью jupyter kernelspec list.

Дополнительная информация доступна здесь

Ответ 7

Следующая команда работает для меня, на macOS Sierra (10.12.3)

python3 -m pip install ipykernel
python3 -m ipykernel install --user

проверьте его с помощью списка jupyter kernelspec. Доступные ядра: python3/Пользователи /admin/Library/Jupyter/kernels/python3 python2/anaconda2/share/jupyter/kernels/python2

Ответ 8

открыть терминал (или cmd для окна), затем выполнить следующие команды: (В окне "Отпустите" источник во второй строке.)

conda create -n py35 python=3.5
source activate py35
conda install notebook ipykernel
ipython kernel install --user --name=python3.5

Я попробовал какой-то метод, но он не работает, тогда я нашел этот способ. Он работал со мной. Надеюсь, это поможет.

Ответ 9

У меня был 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-ноутбука с обычной командой для Python2.7, Python3.3 также доступен при создании нового ноутбука.

Ответ 10

sudo apt-get install python3-pip python3-dev
pip3 install -U jupyter

Ответ 11

В Ubuntu 14.04 мне пришлось использовать комбинацию предыдущих ответов.

Сначала установите pip3 apt-get install python-pip3

Затем с pip3 установите jupyter pip3 install jupyter

Затем с помощью ipython3 установите ядро ipython3 kernel install

Ответ 12

Для текущей пусковой установки Python

Если у вас установлен Py3, но по умолчанию - py2

py -3 -m pip install ipykernel
py -3 -m ipykernel install --user

Если у вас установлен Py2, но по умолчанию - py3

py -2 -m pip install ipykernel
py -2 -m ipykernel install --user

Ответ 13

Ни один из других ответов не работал на меня сразу на ElementaryOS Freya (на основе Ubuntu 14.04); Я получал

[TerminalIPythonApp] ПРЕДУПРЕЖДЕНИЕ | Файл не найден: 'kernelspec'

ошибка, описанная в Matt. Я должен был сначала сделать:

sudo apt-get install pip3, тогда

sudo pip3 install ipython[all]

В этот момент вы можете запустить команды, которые Matt предложили; а именно: ipython kernelspec install-self и ipython3 kernelspec install-self

Теперь, когда я запускаю ipython notebook, а затем открываю ноутбук, я могу выбрать ядро ​​Python 3 из меню Kernel.

Ответ 14

Мне удалось установить ядро ​​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"
 }
}

Ответ 15

Решение хорошо документировано в официальных документах: https://ipython.readthedocs.org/en/latest/install/kernel_install.html

Я попробовал первый подход. Поскольку у меня уже установлен ipykernel, просто запуск python3 -m ipykernel install --user решил проблему.

Ответ 16

Самое короткое и лучшее решение с моей стороны

conda create --name py3-ml python=3.6
conda install ipykernel

source activate py3-ml # or conda activate py3-ml
python -m ipykernel install --user --name py3-ml

Ответ 17

Здесь найден метод Windows/non command line, который работал у меня: Найдите папку, в которой хранятся файлы ядра (на моей машине - C:\ProgramData\jupyter\kernels - обратите внимание, что ProgramData - скрытая папка), создайте копию существующей папки ядра, измените имя и отредактируйте json файл внутри чтобы указать на новый каталог ядра. В этом json вы также можете отредактировать имя ядра, которое отображается в ipython (например, вместо простого python 2, вы можете указать 2.7.9, если вам по каким-то причинам нужно различать).

Ответ 18

Когда вы используете conda для управления вашими приложениями python, выполните следующие два действия:

  • activate py3 (в Windows или source activate py3 в Linux)
  • conda install notebook ipykernel или просто используйте conda install jupyter

Ответ 19

УСТАНОВКА НЕСКОЛЬКИХ ЯДЕР В ОДИНОЧНОЙ ВИРТУАЛЬНОЙ СРЕДЕ (VENV)

Большинство (если не все) из этих ответов предполагают, что вы готовы устанавливать пакеты по всему миру. Этот ответ для вас, если вы:

  • использовать машину * NIX
  • не нравится глобальная установка пакетов
  • не хотите использовать anaconda & lt; → вы счастливы запустить сервер jupyter из командной строки
  • хочу иметь представление о том, что/где находится установка ядра.

(Примечание: этот ответ добавляет ядро python2 к установке python3-jupyter, но концептуально легко поменять местами.)

  1. Предпосылки

    1. Вы находитесь в директории, из которой вы будете запускать сервер jupyter и сохранять файлы
    2. Python2 установлен на вашем компьютере
    3. Python3 установлен на вашем компьютере
    4. virtualenv установлен на вашем компьютере
  2. Создайте python3 venv и установите jupyter

    1. Создайте новую версию python3: python3 -m venv .venv
    2. Активируйте venv: . .venv/bin/activate
    3. Установите jupyterlab: pip install jupyterlab. Это создаст локально всю необходимую инфраструктуру для работы ноутбуков.
    4. Примечание: установив jupyterlab здесь, вы также генерируете "спецификации ядра" по умолчанию (см. ниже) в $PWD/.venv/share/jupyter/kernels/python3/. Если вы хотите установить и запустить jupyter в другом месте и использовать этот venv только для организации всех ваших ядер, вам понадобится только: pip install ipykernel
    5. Теперь вы можете запустить jupyter lab с помощью jupyter lab (и перейти в браузер по URL-адресу, отображаемому в консоли). Пока что вы увидите только одну опцию ядра под названием "Python 3". (Это имя определяется записью display_name в вашем файле kernel.json.)
  3. Добавить ядро Python2

    1. Закройте jupyter (или запустите другую оболочку в том же каталоге): ctrl-c
    2. Деактивируйте ваш python3 venv: deactivate
    3. Создайте новый венв в том же каталоге для python2: virtualenv -p python2 .venv2
    4. Активируйте ваш python2 venv: . .venv2/bin/activate
    5. Установите модуль ipykernel: pip install ipykernel. Это также сгенерирует спецификации ядра по умолчанию для этого python2 venv в .venv2/share/jupyter/kernels/python2
    6. Экспортируйте эти спецификации ядра в ваш python3 venv: python -m ipykernel install --prefix=$PWD/.venv. В основном это просто копирует каталог $PWD/.venv2/share/jupyter/kernels/python2 в $PWD/.venv/share/jupyter/kernels/
    7. Переключитесь обратно на ваш python3 venv и/или перезапустите/повторно проверьте ваш сервер jupyter: deactivate; . .venv/bin/activate; jupyter lab. Если все прошло хорошо, вы увидите опцию Python 2 в вашем списке ядер. Вы можете проверить, что они используют настоящие интерпретаторы python2/python3, обработав их простой командой print 'Hellow world' vs print('Hellow world').
    8. Примечание: вам не нужно создавать отдельный venv для python2, если вы счастливы установить ipykernel и ссылаться на спецификации ядра python2 из глобального пространства, но я предпочитаю хранить все мои зависимости в одном локальном каталоге

TL; DR

  1. При желании установите ядро R. Это поучительно, чтобы развить представление о том, что такое ядро.
    1. Из того же каталога установите пакет R IRkernel: R -e "install.packages('IRkernel',repos='https://cran.mtu.edu/')". (Это установит в ваше стандартное расположение R-пакетов; для R, установленной в домашних условиях на Mac, это будет выглядеть как /usr/local/Cellar/r/3.5.2_2/lib/R/library/IRkernel.)
    2. В пакет IRkernel входит функция для экспорта его спецификаций ядра, поэтому запустите: R -e "IRkernel::installspec(prefix=paste(getwd(),'/.venv',sep=''))". Если вы посмотрите в $PWD/.venv/share/jupyter/kernels/, вы найдете каталог ir с файлом kernel.json, который выглядит примерно так:
{
  "argv": ["/usr/local/Cellar/r/3.5.2_2/lib/R/bin/R", "--slave", "-e", "IRkernel::main()", "--args", "{connection_file}"],
  "display_name": "R",
  "language": "R"
}

Таким образом, ядро просто 'является' вызовом исполняемого файла для конкретного языка из файла kernel.json, который jupyter ищет в каталоге .../share/jupyter/kernels и перечисляет в своем интерфейсе; в этом случае вызывается R для запуска функции IRkernel::main(), которая будет отправлять сообщения туда и обратно на сервер Юпитера. Аналогично, ядро python2 просто "является" вызовом интерпретатора python2 с модулем ipykernel_launcher, как видно из .venv/share/jupyter/kernels/python2/kernel.json и т.д.

Вот скрипт, если вы хотите выполнить все эти инструкции одним махом.

Ответ 20

Я уверен, что все, что вам нужно сделать, это запустить

pip3 установить jupyter