Utilisant les deux Python 2.x et Python 3.X dans le carnet IPython

j'utilise des notebooks IPython et je voudrais pouvoir sélectionner pour créer un 2.x ou 3.x de python notebook IPython.

j'ai d'abord eu Anaconda. Avec Anaconda, une variable d'environnement globale devait être changée pour sélectionner quelle version de python vous voulez et ensuite IPython pouvait être lancé. Ce n'est pas ce que je cherchais donc j'ai désinstallé Anaconda et maintenant j'ai installé ma propre installation en utilisant MacPorts et PiP. Il semble que je dois encore utiliser

port select --set python <python version> 

pour basculer entre python 2.x et 3.x. ce qui n'est pas mieux que la solution anaconda.

y a-t-il un moyen de sélectionner la version de python que vous voulez utiliser après avoir lancé un notebook IPython, de préférence avec ma version MacPorts actuelle?

211
demandé sur Matt 2015-05-27 23:34:41

10 réponses

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

Anaconda > = 4.1.0

depuis la version 4.1.0, anaconda inclut un paquet spécial nb_conda_kernels qui détecte les environnements conda avec des noyaux de notebook et les enregistre automatiquement. Cela rend l'utilisation d'une nouvelle version de python aussi simple que de créer de nouveaux environnements conda:

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

après un redémarrage de Jupyter notebook, les nouveaux noyaux sont disponibles sur l'interface graphique. Veuillez noter que les nouveaux paquets doivent être installés explicitement dans les nouveaux environnements. La section gestion des environnements dans le Docs de conda fournit de plus amples informations.

enregistrement Manuel des noyaux

utilisateurs qui ne veulent pas utiliser nb_conda_kernels ou encore utiliser des versions plus anciennes d'anaconda peut utiliser les étapes suivantes pour enregistrer manuellement les noyaux d'ipython.

configurer le python2.7 environnement:

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 que vous devriez être en mesure de 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 voulez changer le nom de vos noyaux. Voir ipython kernel install --help pour plus d'informations.

285
répondu cel 2018-10-11 07:55:56

si vous lancez Jupyter sur Python 3, vous pouvez configurer un noyau Python 2 comme ceci:

python2 -m pip install ipykernel

python2 -m ipykernel install --user

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

216
répondu Ish 2016-06-16 12:22:41

avec une version actuelle du Notebook/Jupyter, vous pouvez créer un noyau Python3 . Après avoir lancé une nouvelle application de bloc-notes à 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 carnet qui utilise Python 3. Vous pouvez donc avoir deux carnets côte à côte avec différentes versions de Python.

Les Détails

  1. créer ce répertoire: mkdir -p ~/.ipython/kernels/python3
  2. créer 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 notebook.

  4. sélectionnez "Python 3" dans le menu déroulant "Nouveau "
  5. travailler avec un carnet Python 3
  6. sélectionnez "Python 2" dans le menu déroulant "Nouveau "
  7. travailler avec un carnet Python 2
36
répondu Mike Müller 2015-09-01 13:41:44

ces instructions expliquent comment installer un noyau python2 et python3 dans des environnements virtuels séparés pour les utilisateurs non-anaconda. Si vous utilisez anaconda, veuillez trouver mon autre réponse pour une solution directement adaptée à anaconda.

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


assurez-vous D'abord d'avoir un interprète python2 et un interprète python3 avec pip disponible.

sur ubuntu vous installez ces par:

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

préparer et enregistrer 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 faciliter les choses, vous pouvez ajouter des alias shell pour la commande d'activation à votre fichier de configuration shell. Selon le système et le shell que vous utilisez, cela peut être par exemple ~/.bashrc , ~/.bash_profile ou ~/.zshrc

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

après redémarrez votre shell, vous pouvez maintenant installer de nouveaux paquets après avoir activé l'environnement que vous voulez utiliser.

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

ou

kernel3
python -m pip install <pkg-name>
deactivate
29
répondu cel 2017-05-23 12:03:09

une solution est disponible qui me permet de garder mon installation MacPorts en configurant le kernelspec Ipython.

exigences:

  • MacPorts est installé habituelles dans le répertoire /opt
  • python 2.7 est installé par macports
  • python 3.4 est installé par 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

maintenant vous pouvez ouvrir un notebook Ipython et ensuite choisir un python 2.x ou un python 3.x portable.

Choose your python!

21
répondu deltap 2015-08-27 18:08:14

de mon installation 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


mise à jour:

la méthode ci-dessus est maintenant dépréciée et seront abandonnées dans l'avenir. La nouvelle méthode devrait être:

sudo ipython2 kernel install

17
répondu mimoralea 2016-10-11 17:44:30

voici les étapes pour ajouter le noyau python2 au carnet jupyter:

ouvrir un terminal et créer un nouvel environnement python 2: conda create -n py27 python=2.7

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

installer le noyau dans l'env: conda install notebook ipykernel

installer le noyau pour l'extérieur de l'env: ipython kernel install --user

fermer l'env: source deactivate

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

5
répondu Akash Chandra 2017-12-19 09:41:45

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 bloc-notes de choisir dans le bloc-notes de jupyter.

3
répondu sv_jan5 2017-03-30 13:12:04

j'ai regardé cette excellente information et puis s'est demandé , depuis

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

si PyCharm serait d'utiliser

  1. IPython-py2 quand le Menu>Fichier>réglages>Réglages du Projet>Projet Interprète == py2 ET
  2. IPython-py3 quand le Menu>Fichier>réglages>Réglages du Projet>Projet Interprète == py3

Réponse: Oui!

P.S. J'ai aussi un lanceur Python Pour Windows.

1
répondu Love and peace - Joe Codeswell 2016-06-13 16:25:30

sous Windows 7 j'ai fait installer anaconda et anaconda3. Je suis allé dans \Users\me\anaconda\Scripts et exécuté

sudo .\ipython kernelspec install-self

puis je suis allé dans \Users\me\anaconda3\Scripts et exécuté

sudo .\ipython kernel install

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

après avoir commencé jupyter notebook (dans anaconda3) j'ai eu un menu déroulant dans le coin supérieur droit sous" nouveau " me permettant de choisir entre Python 2 odr Python 3 kernels.

0
répondu Krischu 2016-07-07 09:33:48