it-swarm.com.de

Verwenden von Python 2.x und Python 3.x in IPython Notebook

Ich verwende IPython-Notebooks und möchte in der Lage sein, ein 2.x- oder 3.x-Python-Notebook in IPython zu erstellen.

Ich hatte zunächst Anaconda. Bei Anaconda musste eine globale Umgebungsvariable geändert werden, um die gewünschte Python-Version auszuwählen, und IPython konnte gestartet werden. Dies war nicht das, wonach ich suchte, also habe ich Anaconda deinstalliert und jetzt meine eigene Installation mit MacPorts und PiP eingerichtet. Es scheint, dass ich noch verwenden muss

port select --set python <python version> 

zwischen Python 2.x und 3.x umschalten. Das ist nicht besser als die Anaconda-Lösung.

Gibt es eine Möglichkeit, auszuwählen, welche Python-Version Sie verwenden möchten, nachdem Sie ein IPython-Notebook gestartet haben, vorzugsweise mit meinem aktuellen MacPorts-Build?

229
deltap

Es gibt eine Lösung, mit der ich meine MacPorts-Installation beibehalten kann, indem Sie die Ipython-Kernelspec konfigurieren.

Bedarf:

  • MacPorts wird im üblichen Verzeichnis/opt installiert
  • python 2.7 wird über macports installiert
  • python 3.4 wird über macports installiert
  • Ipython ist für Python 2.7 installiert
  • Ipython ist für Python 3.4 installiert

Für Python 2.x:

$ cd /opt/local/Library/Frameworks/Python.framework/Versions/2.7/bin
$ Sudo ./ipython kernelspec install-self

Für Python 3.x:

$ cd /opt/local/Library/Frameworks/Python.framework/Versions/3.4/bin
$ Sudo ./ipython kernelspec install-self

Jetzt können Sie ein Ipython-Notizbuch öffnen und dann ein Python 2.x- oder ein Python 3.x-Notizbuch auswählen.

 Choose your python!

22
deltap

Die Idee hier ist, mehrere ipython-Kernel zu installieren. Hier sind Anweisungen für Anaconda. Wenn Sie keine Anaconda verwenden, habe ich kürzlich Anweisungen hinzugefügt, indem Sie reine Virtualenvs verwenden.

Anakonda> = 4.1.0

Anaconda enthält seit Version 4.1.0 ein spezielles Paket nb_conda_kernels, das Conda-Umgebungen mit Notebook-Kerneln erkennt und automatisch registriert. Dies macht die Verwendung einer neuen Python-Version so einfach wie das Erstellen neuer Conda-Umgebungen:

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

Nach einem Neustart von Jupyter Notebook sind die neuen Kernel über die grafische Benutzeroberfläche verfügbar. Bitte beachten Sie, dass neue Pakete explizit in den neuen Umgebungen installiert werden müssen. Der Abschnitt Umgebungen verwalten in den Dokumenten von conda enthält weitere Informationen.

Kernel manuell registrieren

Benutzer, die nb_conda_kernels nicht verwenden möchten oder noch ältere Versionen von Anaconda verwenden, können die folgenden Schritte zum manuellen Registrieren von Ipython-Kerneln verwenden.

konfigurieren Sie die python2.7-Umgebung:

conda create -n py27 python=2.7
conda activate py27
conda install notebook ipykernel
ipython kernel install --user

konfigurieren Sie die python3.6-Umgebung:

conda create -n py36 python=3.6
conda activate py36
conda install notebook ipykernel
ipython kernel install --user

Danach sollten Sie zwischen python2 wählen können.
und python3 beim Erstellen eines neuen Notizbuchs in der Benutzeroberfläche.

Außerdem können Sie die Optionen --name und --display-name an ipython kernel install übergeben, wenn Sie die Namen Ihrer Kernel ändern möchten. Weitere Informationen finden Sie unter ipython kernel install --help.

303
cel

Wenn Sie Jupyter auf Python 3 ausführen, können Sie einen Python 2-Kernel wie folgt einrichten:

python2 -m pip install ipykernel

python2 -m ipykernel install --user

http://ipython.readthedocs.io/de/stable/install/kernel_install.html

234
Ish

Mit einer aktuellen Version des Notebook/Jupyter können Sie einen Python3-Kernel erstellen. Nach dem Starten einer neuen Notebook-Anwendung über die Befehlszeile mit Python 2 sollte im Dropdown-Menü „Neu“ der Eintrag „Python 3“ angezeigt werden. Dadurch erhalten Sie ein Notebook, das Python 3 verwendet. Sie können also zwei Notebooks nebeneinander mit verschiedenen Python-Versionen verwenden.

Die Details

  1. Erstellen Sie dieses Verzeichnis: mkdir -p ~/.ipython/kernels/python3
  2. Erstellen Sie diese Datei ~/.ipython/kernels/python3/kernel.json mit diesem Inhalt:

    {
        "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. Starten Sie den Notebook-Server neu.

  4. Wähle "Python 3" aus dem Dropdown-Menü "Neu"
  5. Arbeiten Sie mit einem Python 3-Notebook
  6. Wähle "Python 2" aus dem Dropdown-Menü "Neu"
  7. Arbeiten Sie mit einem Python 2-Notebook
37
Mike Müller

Diese Anweisungen erläutern die Installation eines Python2- und Python3-Kernels in separaten virtuellen Umgebungen für Benutzer, die keine Anaconda sind. Wenn Sie Anaconda verwenden, finden Sie meine andere Antwort für eine Lösung, die direkt auf Anaconda zugeschnitten ist. 

Ich gehe davon aus, dass Sie jupyter notebook bereits installiert haben.


Stellen Sie zunächst sicher, dass Sie einen python2 und einen python3-Interpreter mit pip verfügbar haben.

Auf Ubuntu würden Sie diese installieren durch:

Sudo apt-get install python-dev python3-dev python-pip python3-pip

Als nächstes bereiten Sie die Kernel-Umgebungen vor und registrieren Sie sie

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

Der Einfachheit halber sollten Sie der Shell-Konfigurationsdatei Shell-Aliasnamen für den Aktivierungsbefehl hinzufügen. Abhängig von dem System und der Shell, die Sie verwenden, kann dies z. ~/.bashrc, ~/.bash_profile oder ~/.zshrc

alias kernel2='source ~/py2_kernel/bin/activate'
alias kernel3='source ~/py3_kernel/bin/activate'

Nach dem Neustart der Shell können Sie jetzt neue Pakete installieren, nachdem Sie die Umgebung aktiviert haben, die Sie verwenden möchten.

kernel2
python -m pip install <pkg-name>
deactivate

oder

kernel3
python -m pip install <pkg-name>
deactivate
31
cel

Von meiner Linux-Installation habe ich gemacht:

Sudo ipython2 kernelspec install-self

Und jetzt ist mein Python 2 wieder auf der Liste.

Referenz:

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


UPDATE:

Die obige Methode ist nun veraltet und wird in Zukunft fallen gelassen. Die neue Methode sollte sein:

Sudo ipython2 kernel install

17
mimoralea

Gehen Sie folgendermaßen vor, um den Python2-Kernel zu Jupyter Notebook hinzuzufügen:

Öffnen Sie ein Terminal und erstellen Sie eine neue Python 2-Umgebung: conda create -n py27 python=2.7

aktiviere die Umgebung: Linux source activate py27 oder Windows activate py27

installieren Sie den Kernel in der Umgebung: conda install notebook ipykernel

installieren Sie den Kernel außerhalb der Umgebung: ipython kernel install --user

schließe die Umgebung: source deactivate

Obwohl eine späte Antwort hoffe, findet jemand es nützlich: p

6
Akash Chandra

Verwenden Sie Sudo pip3 install jupyter zum Installieren von jupyter für python3 und Sudo pip install jupyter zum Installieren von jupyter notebook für python2. Anschließend können Sie den Befehl ipython kernel install aufrufen, damit beide Notizbuchtypen in Jupyter Notizbuch ausgewählt werden können.

3
sv_jan5

Ich habe mir diese exzellente Info angesehen und dann wunderte sich, da 

  1. ich habe Python2, Python3 und IPython installiert,
  2. ich habe PyCharm installiert,
  3. PyCharm verwendet IPython für seine Python-Konsole,

ifPyCharm würde verwenden 

  1. IPython-py2 bei Menü> Datei> Einstellungen> Projekt> Projektinterpreter == py2 UND
  2. IPython-py3 bei Menü> Datei> Einstellungen> Projekt> Projektinterpreter == py3

ANTWORT: Ja!

P.S. Ich habe auch Python Launcher für Windows installiert.

Unter Windows 7 hatte ich Anaconda und Anaconda3 installiert. Ich ging in \Users\me\anaconda\Scripts und führte sie aus 

Sudo .\ipython kernelspec install-self

dann ging ich in \Users\me\anaconda3\Scripts und führte aus

Sudo .\ipython kernel install

(Ich habe jupyter kernelspec install-self is DEPRECATED as of 4.0. You probably want 'ipython kernel install' to install the IPython kernelspec.)

Nach dem Start von jupyter notebook (in anaconda3) habe ich in der oberen rechten Ecke unter "Neu" ein ordentliches Dropdown-Menü erhalten, in dem ich zwischen Python 2 oder Python 3-Kerneln wählen kann.

0
Krischu
  • Wenn Sie Anaconda in einer virtuellen Umgebung ausführen.
  • Und wenn Sie ein neues Notizbuch erstellen, aber nicht angezeigt wird, um den Kernel der virtuellen Umgebung auszuwählen.
  • Dann müssen Sie es mit dem folgenden Kommando in den ipykernel setzen
$ python -m ipykernel install --user --name=test2
0
Rahul Verma