Использование Python 2.x и Python 3.x в IPython Notebook
Я использую ноутбуки IPython и хотел бы иметь возможность выбрать для создания записной книжки python 2.x или 3.x в IPython.
Сначала у меня была Анаконда. С помощью Anaconda необходимо было изменить глобальную переменную окружения, чтобы выбрать, какую версию python вы хотите, а затем запустить IPython. Это не то, что я искал, поэтому я удалил Anaconda и теперь настроил свою собственную установку с помощью MacPorts и PiP. Кажется, что мне все еще нужно использовать
port select --set python <python version>
для переключения между python 2.x и 3.x. что не лучше, чем решение анаконды.
Есть ли способ выбрать, какую версию python вы хотите использовать после запуска IPython-ноутбука, желательно с моей текущей сборкой MacPorts?
Ответы
Ответ 1
Доступно решение, позволяющее мне сохранить установку MacPorts, настроив Iysthon kernelspec.
Требования:
- MacPorts установлен в обычном каталоге /opt
- python 2.7 устанавливается через macports
- python 3.4 устанавливается через macports
- Ipython установлен для python 2.7
- Ipython установлен для python 3.4
Для python 2.x:
$ cd /opt/local/Library/Frameworks/Python.framework/Versions/2.7/bin
$ sudo ./ipython kernelspec install-self
Для python 3.x:
$ cd /opt/local/Library/Frameworks/Python.framework/Versions/3.4/bin
$ sudo ./ipython kernelspec install-self
Теперь вы можете открыть ноутбук Ipython, а затем выбрать python 2.x или python 3.x.
![Выберите свой питон!]()
Ответ 2
Идея здесь состоит в том, чтобы установить несколько ядер ipython
. Вот инструкция для анаконды. Если вы не используете анаконду, я недавно добавил инструкции, использующие pure virtualenvs.
Анаконда> = 4.1.0
Начиная с версии 4.1.0, anaconda включает специальный пакет nb_conda_kernels
который обнаруживает среды nb_conda_kernels
с ядрами ноутбуков и автоматически регистрирует их. Это делает использование новой версии Python таким же простым, как и создание новых сред conda:
conda create -n py27 python=2.7 ipykernel
conda create -n py36 python=3.6 ipykernel
После перезапуска ноутбука Jupyter новые ядра становятся доступны через графический интерфейс. Обратите внимание, что новые пакеты должны быть явно установлены в новых средах. Раздел Управление средами в conda docs предоставляет дополнительную информацию.
Ручная регистрация ядер
Пользователи, которые не хотят использовать nb_conda_kernels
или все еще используют более старые версии anaconda, могут выполнить следующие шаги для ручной регистрации ядер ipython.
настроить среду python2.7
:
conda create -n py27 python=2.7
conda activate py27
conda install notebook ipykernel
ipython kernel install --user
настроить среду python3.6
:
conda create -n py36 python=3.6
conda activate py36
conda install notebook ipykernel
ipython kernel install --user
После этого вы сможете выбрать между python2
и python3
при создании новой записной книжки в интерфейсе.
Кроме того, вы можете передать --name
и --display-name
в ipython kernel install
если вы хотите изменить имена ваших ядер. См. ipython kernel install --help
для получения дополнительной информации.
Ответ 3
Если вы запускаете Jupyter на Python 3, вы можете настроить ядро Python 2 следующим образом:
python2 -m pip install ipykernel
python2 -m ipykernel install --user
http://ipython.readthedocs.io/en/stable/install/kernel_install.html
Ответ 4
В текущей версии ноутбука /Jupyter вы можете создать ядро Python3. После запуска нового приложения для ноутбука из командной строки с Python 2 в выпадающем меню "Новый" вы увидите запись "Python 3". Это дает вам ноутбук, который использует Python 3. Таким образом, вы можете иметь два ноутбука бок о бок с разными версиями Python.
Подробности
- Создайте этот каталог:
mkdir -p ~/.ipython/kernels/python3
-
Создайте этот файл ~/.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"
}
}
-
Перезагрузите сервер ноутбука.
- Выберите "Python 3" в раскрывающемся меню "Новый"
- Работа с ноутбуком Python 3
- Выберите "Python 2" из выпадающего меню "Новый"
- Работа с ноутбуком Python 2
Ответ 5
В этих инструкциях объясняется, как установить ядро python2 и python3 в отдельных виртуальных средах для пользователей, не являющихся участниками anaconda. Если вы используете anaconda, найдите наш другой ответ для решения, специально адаптированного к анаконде.
Я предполагаю, что у вас уже установлен jupyter notebook
.
Сначала убедитесь, что у вас есть интерпретатор python2
и python3
с pip
.
На ubuntu вы установите их следующим образом:
sudo apt-get install python-dev python3-dev python-pip python3-pip
Далее подготовьте и зарегистрируйте среды ядра
python -m pip install virtualenv --user
# configure python2 kernel
python -m virtualenv -p python2 ~/py2_kernel
source ~/py2_kernel/bin/activate
python -m pip install ipykernel
ipython kernel install --name py2 --user
deactivate
# configure python3 kernel
python -m virtualenv -p python3 ~/py3_kernel
source ~/py3_kernel/bin/activate
python -m pip install ipykernel
ipython kernel install --name py3 --user
deactivate
Чтобы упростить задачу, вы можете добавить псевдонимы оболочки для команды активации в файл конфигурации оболочки. В зависимости от используемой системы и оболочки это может быть, например, ~/.bashrc
, ~/.bash_profile
или ~/.zshrc
alias kernel2='source ~/py2_kernel/bin/activate'
alias kernel3='source ~/py3_kernel/bin/activate'
После перезапуска вашей оболочки вы можете теперь устанавливать новые пакеты после активации среды, которую хотите использовать.
kernel2
python -m pip install <pkg-name>
deactivate
или
kernel3
python -m pip install <pkg-name>
deactivate
Ответ 6
Из моей установки Linux я сделал:
sudo ipython2 kernelspec install-self
И теперь мой python 2 возвращается в список.
Справка:
http://ipython.readthedocs.org/en/latest/install/kernel_install.html
UPDATE:
Вышеуказанный метод теперь устарел и будет опущен в будущем. Новый метод должен быть:
sudo ipython2 kernel install
Ответ 7
Ниже приведены шаги по добавлению ядра python2 в блокнот jupyter:
откройте терминал и создайте новую среду Python 2: conda create -n py27 python=2.7
активировать среду: Linux source activate py27
или windows activate py27
установить ядро в env: conda install notebook ipykernel
установить ядро за пределами установки ядра env: ipython kernel install --user
закрыть env: source deactivate
Хотя поздний ответ, надеюсь, кто-то найдет это полезным: p
Ответ 8
Используйте sudo pip3 install jupyter
для установки jupyter для python3 и sudo pip install jupyter
для установки jupyter notebook для python2. Затем вы можете вызвать команду ipython kernel install
, чтобы разрешить использование обоих типов ноутбуков в jupyter-ноутбуке.
Ответ 9
Я просмотрел эту отличную информацию, а затем задал вопрос, так как
- У меня установлены все python2, python3 и IPython,
- У меня установлен PyCharm,
- PyCharm использует IPython для своей консоли Python,
, если PyCharm будет использовать
- IPython-py2, когда Menu > File > Settings > Project > Project Interpreter == py2 И
- IPython-py3, когда Menu > File > Settings > Project > Project Interpreter == py3
ОТВЕТ: Да!
P.S. У меня также установлена Python Launcher для Windows.
Ответ 10
В Windows 7 у меня были установлены anaconda и anaconda3.
Я вошел в \Users\me\anaconda\Scripts
и выполнил
sudo .\ipython kernelspec install-self
то я вошел в \Users\me\anaconda3\Scripts
и выполнил
sudo .\ipython kernel install
(я получил jupyter kernelspec install-self is DEPRECATED as of 4.0. You probably want 'ipython kernel install' to install the IPython kernelspec.
)
После запуска jupyter notebook
(в anaconda3) я получил аккуратное выпадающее меню в правом верхнем углу в разделе "Новый", позволяя мне выбирать между ядрами Python 2 odr Python 3.
Ответ 11
- Если вы работаете с Anaconda в виртуальной среде.
- И когда вы создаете новый ноутбук, но я не показываю, чтобы выбрать ядро виртуальной среды.
- Затем вы должны установить его в ipykernel, используя следующий коммандер
$ python -m ipykernel install --user --name=test2