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?
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.
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
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
- créer ce répertoire:
mkdir -p ~/.ipython/kernels/python3
-
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" } }
-
redémarrez le serveur notebook.
- sélectionnez "Python 3" dans le menu déroulant "Nouveau "
- travailler avec un carnet Python 3
- sélectionnez "Python 2" dans le menu déroulant "Nouveau "
- travailler avec un carnet Python 2
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
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.
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
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
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.
j'ai regardé cette excellente information et puis s'est demandé , depuis
- j'ai installé python2, python3 et IPython,
- j'ai installé PyCharm,
- PyCharm utilise IPython pour sa Console Python,
si PyCharm serait d'utiliser
- IPython-py2 quand le Menu>Fichier>réglages>Réglages du Projet>Projet Interprète == py2 ET
- 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.
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.