web-dev-qa-db-fra.com

Utilisation de Python 2.x et Python 3.x dans IPython Notebook

J'utilise des ordinateurs portables IPython et j'aimerais pouvoir créer un ordinateur portable python 2.x ou 3.x dans IPython.

J'ai d'abord eu Anaconda. Avec Anaconda, une variable d’environnement global a dû être modifiée pour sélectionner la version de python de votre choix, puis IPython peut être démarré. Ce n’est pas ce que je recherchais, j’ai donc désinstallé Anaconda et installé ma propre installation à l’aide de MacPorts et de PiP. Il semble que je dois encore utiliser

port select --set python <python version> 

pour basculer entre python 2.x et 3.x. qui ne vaut pas mieux que la solution d'anaconda.

Existe-t-il un moyen de sélectionner la version de python que vous souhaitez utiliser après avoir démarré un bloc-notes IPython, de préférence avec la version actuelle de MacPorts?

229
deltap

Une solution est disponible qui me permet de conserver mon installation MacPorts en configurant Ipython kernelspec.

Exigences:

  • MacPorts est installé dans le répertoire habituel/opt
  • python 2.7 est installé via macports
  • python 3.4 est installé via macports
  • Ipython est installé pour Python 2.7
  • Ipython est installé pour Python 3.4

Pour Python 2.x:

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

Pour Python 3.x:

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

Vous pouvez maintenant ouvrir un bloc-notes Ipython, puis choisir un bloc-notes python 2.x ou 3.x.

 Choose your python!

22
deltap

L'idée ici est d'installer plusieurs noyaux ipython. Voici les instructions pour l'anaconda. Si vous n'utilisez pas anaconda, j'ai récemment ajouté instructions using virtualenvs pur.

Anaconda> = 4.1.0

Depuis la version 4.1.0, anaconda inclut un package spécial nb_conda_kernels qui détecte les environnements Conda avec des noyaux de portables et les enregistre automatiquement. Cela rend l'utilisation d'une nouvelle version de Python aussi simple que la création de nouveaux environnements Conda:

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

Après le redémarrage de jupyter notebook, les nouveaux noyaux sont disponibles via l'interface graphique. Veuillez noter que les nouveaux packages doivent être explicitement installés dans les nouveaux environnements. La section Gestion des environnements dans la documentation de conda fournit des informations supplémentaires.

Enregistrement manuel des noyaux

Les utilisateurs qui ne souhaitent pas utiliser nb_conda_kernels ou utilisent encore des versions antérieures d’anaconda peuvent procéder comme suit pour enregistrer manuellement les noyaux ipython.

configurer l'environnement python2.7:

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

configurer l'environnement python3.6:

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

Après cela, vous devriez pouvoir choisir entre python2
et python3 lors de la création d’un nouveau bloc-notes dans l’interface.

De plus, vous pouvez passer les options --name et --display-name à ipython kernel install si vous souhaitez modifier les noms de vos noyaux. Voir ipython kernel install --help pour plus d'informations.

303
cel

Si vous utilisez Jupyter sur Python 3, vous pouvez configurer un noyau Python 2 comme suit:

python2 -m pip install ipykernel

python2 -m ipykernel install --user

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

234
Ish

Avec une version actuelle de Notebook/Jupyter, vous pouvez créer un noyau Python3 . Après avoir démarré une nouvelle application de cahier à partir de la ligne de commande avec Python 2, vous devriez voir une entrée «Python 3» dans le menu déroulant «Nouveau». Cela vous donne un bloc-notes qui utilise Python 3. Ainsi, vous pouvez avoir deux blocs-notes côte à côte avec différentes versions de Python.

Les détails

  1. Créez ce répertoire: mkdir -p ~/.ipython/kernels/python3
  2. Créez ce fichier ~/.ipython/kernels/python3/kernel.json avec ce contenu:

    {
        "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. Redémarrez le serveur de notebook.

  4. Sélectionnez „Python 3“ dans le menu déroulant „Nouveau“
  5. Travailler avec un cahier Python 3
  6. Sélectionnez «Python 2» dans le menu déroulant «Nouveau».
  7. Travailler avec un cahier Python 2
37
Mike Müller

Ces instructions expliquent comment installer un noyau python2 et python3 dans des environnements virtuels distincts pour des utilisateurs non-anaconda. Si vous utilisez l'anaconda, veuillez trouver ma autre réponse pour une solution directement adaptée à l'anaconda. 

Je suppose que vous avez déjà installé jupyter notebook.


Commencez par vous assurer que vous disposez d'un python2 et d'un interprète python3 avec pip disponible.

Sur Ubuntu, vous les installeriez en:

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

Ensuite, préparez et enregistrez les environnements du noyau

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

Pour simplifier les choses, vous pouvez ajouter des alias de shell pour la commande d'activation à votre fichier de configuration de shell. Selon le système et le shell que vous utilisez, il peut s’agir, par exemple, de ~/.bashrc, ~/.bash_profile ou ~/.zshrc

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

Après avoir redémarré votre Shell, vous pouvez désormais installer de nouveaux packages après avoir activé l'environnement que vous souhaitez utiliser.

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

ou

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

De mon installation de Linux j'ai fait:

Sudo ipython2 kernelspec install-self

Et maintenant, mon python 2 est de retour sur la liste.

Référence:

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


METTRE À JOUR:

La méthode ci-dessus est maintenant obsolète et sera abandonnée à l'avenir. La nouvelle méthode devrait être:

Sudo ipython2 kernel install

17
mimoralea

Voici les étapes à suivre pour ajouter le noyau python2 à jupyter notebook:

ouvrez un terminal et créez un nouvel environnement Python 2: conda create -n py27 python=2.7

activer l'environnement: Linux source activate py27 ou windows activate py27

installez le noyau dans env: conda install notebook ipykernel

installez le noyau en dehors de env: ipython kernel install --user

fermez env: source deactivate

Bien qu'une réponse tardive espère que quelqu'un le trouvera utile: p

6
Akash Chandra

Utilisez Sudo pip3 install jupyter pour installer jupyter pour python3 et Sudo pip install jupyter pour installer jupyter notebook pour python2. Ensuite, vous pouvez appeler la commande ipython kernel install pour permettre aux deux types de cahiers de choisir dans jupyter cahier.

3
sv_jan5

Je regardai cette excellente information puis me demandai, depuis 

  1. j'ai installé python2, python3 et IPython,
  2. j'ai installé PyCharm,
  3. PyCharm utilise IPython pour sa console Python,

siPyCharm utiliserait 

  1. IPython-py2 lorsque Menu> Fichier> Paramètres> Projet> Interprète de projet == py2 ET
  2. IPython-py3 lorsque Menu> Fichier> Paramètres> Projet> Interprète de projet == py3

REPONSE: Oui!

P.S. J'ai également installé Python Launcher for Windows.

Sous Windows 7, j'avais anaconda et anaconda3 installés . Je suis entré dans \Users\me\anaconda\Scripts et exécuté 

Sudo .\ipython kernelspec install-self

alors je suis entré dans \Users\me\anaconda3\Scripts et exécuté

Sudo .\ipython kernel install

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

Après avoir lancé jupyter notebook (dans anaconda3), un menu déroulant bien ordonné placé dans le coin supérieur droit sous "Nouveau" me permet de choisir entre les noyaux Python 2 ou Python 3.

0
Krischu
  • Si vous utilisez anaconda dans un environnement virtuel.
  • Et lorsque vous créez un nouveau bloc-notes mais que je ne montre pas comment sélectionner le noyau de l'environnement virtuel.
  • Ensuite, vous devez le configurer dans ipykernel en utilisant la commande suivante:
$ python -m ipykernel install --user --name=test2
0
Rahul Verma