Используя оба Python 2.x и Python 3.x в ноутбуке IPython



Я использую IPython ноутбуки и хотел бы иметь возможность выбрать, чтобы создать 2.x или 3.X python ноутбук в IPython.



У меня изначально была Анаконда. С Anaconda глобальная переменная среды должна была быть изменена, чтобы выбрать, какую версию python вы хотите, а затем IPython может быть запущен. Это не то, что я искал, поэтому я удалил Anaconda и теперь настроил свою собственную установку с помощью MacPorts и PiP. Кажется, что я все еще должен использовать



port select --set python <python version> 


to переключение между python 2.x и 3.x. что не лучше, чем решение анаконды.



есть ли способ выбрать, какую версию python вы хотите использовать после запуска ноутбука IPython, предпочтительно с моей текущей сборкой MacPorts?

776   10  

10 ответов:

идея здесь заключается в установке нескольких ipython ядра. Вот инструкции для анаконды. Если вы не используете anaconda, я недавно добавил - инструкции используя чисто virtualenvs.

Анаконда >= 4.1.0

начиная с версии 4.1.0, anaconda включает в себя специальный пакет nb_conda_kernels который обнаруживает среды conda с ядрами ноутбуков и автоматически регистрирует их. Это делает использование новой версии python таким же простым, как создание нового conda окружающая среда:

conda create -n py27 python=2.7 ipykernel
conda create -n py36 python=3.6 ipykernel

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

ручная регистрация ядер

пользователи, которые не хотят использовать 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 дополнительные информации.

Если вы используете 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

С текущей версией ноутбука/Jupyter, вы можете создать ядро Python3. После запуска нового приложения для ноутбука из командной строки С Python 2 вы должны увидеть запись " Python 3 "в выпадающем меню"New". Это дает вам ноутбук, который использует Python 3. Таким образом, вы можете иметь два ноутбука бок о бок с различными версиями Python.

Подробности

  1. создать эту директорию: mkdir -p ~/.ipython/kernels/python3
  2. создать это файл ~/.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"
        }
    }
    
  3. перезагрузите сервер ноутбука.

  4. выберите " Python 3 "из выпадающего меню"New"
  5. работа с ноутбуком Python 3
  6. выберите " Python 2 "из выпадающего меню"New"
  7. работа с ноутбуком Python 2

эти инструкции объясняют, как установить ядро python2 и python3 в отдельных виртуальных средах для пользователей, отличных от anaconda. Если вы используете anaconda, пожалуйста, найдите my другого ответа для решения непосредственно с учетом анаконда.

я предполагаю, что у вас уже есть 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

доступно решение, которое позволяет мне сохранить установку MacPorts, настроив IPython 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 или питон 3.X ноутбук.

Choose your python!

из моей установки Linux я сделал:

sudo ipython2 kernelspec install-self

и теперь мой python 2 вернулся в список.

ссылки:

http://ipython.readthedocs.org/en/latest/install/kernel_install.html


обновление:

метод, описанный выше, теперь устарел и будет удален в будущем. Новый метод должен быть:

sudo ipython2 kernel install

Ниже приведены шаги, чтобы добавить ядро python2 в Jupyter notebook::

откройте терминал и создайте новую среду 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

использовать sudo pip3 install jupyter для установки jupyter для python3 и sudo pip install jupyter для установки ноутбука jupyter для python2. Тогда, вы можете позвонить ipython kernel install команда для включения обоих типов ноутбуков на выбор в Jupyter notebook.

Я посмотрел на эту отличную информацию, а затем интересно С

  1. у меня установлены python2, python3 и IPython,
  2. у меня установлен PyCharm,
  3. PyCharm использует IPython для своей консоли Python,

еслиPyCharm использовать

  1. IPython-py2 когда меню > Файл>Настройки>проект>интерпретатор проекта == py2 и
  2. IPython-py3 когда меню > Файл>Настройки>проект>интерпретатор проекта = = py3

ответ: да!

P. S. У меня лаунчер Python для Windows также установлена.

под 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) у меня есть аккуратное выпадающее меню в правом верхнем углу под "New", позволяющее мне выбирать между ядрами Python 2 odr Python 3.

Comments

    Ничего не найдено.