Installer un environnement de développement python avec conda

Ce contenu est obsolète. Il peut contenir des informations intéressantes mais soyez prudent avec celles-ci.

Ce tutoriel vous explique comment installer un environnement Python (et en particulier un environnement Python dédié aux sciences) à l’aide de Conda.

Conda est un gestionnaire de paquets binaires multiplateforme. Il permet l’installation et la mise à jour de paquets, notamment de paquets Python.

Conda vous permet de télécharger des programmes et bibliothèques pré-compilées et de les installer sur votre ordinateur, dans le dossier d’installation de Conda, sans besoin d’accès administrateur. De par la pré-compilation, l’installation de programmes ou bibliothèques est très simple (compiler une bibliothèque comme Numpy est un calvaire), mais le nombre de paquets disponibles est restreint. Il peut parfaitement s’utiliser en complément de Pip, un autre gestionnaire de paquets.

Conda permet l’installation de python lui-même, de bibliothèques (numpy, scipy, mais aussi des bibliothèques non scientifiques, comme PyQt…), d’un environnement de développement (abrévié IDE en anglais), comme Spyder et d’un système d’environnements virtuels.

Si vous êtes sous Linux, il est probablement préférable de passer par votre gestionnaire de paquets.

Conda reste cependant utile si vous n’êtes pas administrateur, si les bibliothèques présentes dans le gestionnaire de paquets de votre distribution sont trop vieilles (ou absentes !) ou bien si vous souhaitez utiliser le très efficace système d’environnements virtuels de Conda.

Conda fonctionne aussi bien avec Python 2 que Python 3.

Pour plus d’informations, n’hésitez pas à lire la documentation en ligne, ou les pages man (aussi disponibles en ligne).

Ce tutoriel peut n’être lu qu’en parti. La dernière partie est facultative dans tous les cas. La deuxième l’est aussi si vous choisissez Anaconda. Ce tutoriel n’a pas de pré-requis particulier (outre savoir lire).

Installation

Vous pouvez au choix installer tout Anaconda (le gestionnaire de paquet Conda, plus les bibliothèques scientifiques, plus un environnement de développement…) ou le gestionnaire de paquet seulement. Ne faites bien évidemment que l’un des deux.

Installer tout Anaconda

Allez sur la page de téléchargement de Continuum et sélectionnez la version souhaitée parmi les versions disponibles (Windows, OS X ou Linux, 32 ou 64 bits, Python 2 ou Python 3). Lancez l’exécutable téléchargé (double-clique sous Windows ou OS X, à l’aide de bash depuis une console sous Linux) et suivez les instructions d’installation. Si vous avez déjà une version Python d’installée, lisez la section « Un mot sur les versions multiples ».

Vous vous retrouvez avec un interpréteur Python, l’éditeur Spyder, ainsi que de nombreuses bibliothèques. Pour créer un script Python, lancer Spyder et taper le code Python directement dedans.

Installer Miniconda

Si vous voulez limiter la quantité de choses installées, choisissez Miniconda. Sélectionnez la version souhaitée et lancez l’exécutable téléchargé (double-clique sous Windows ou OS X, à l’aide de bash depuis une console sous Linux) et suivez les instructions d’installation.

Les paquets dont vous aurez besoin pour une application scientifique sont numpy, scipy, matplotlib, et les éventuels paquets spécifiques à votre domaine. Voir la partie suivante pour les commandes d’installation.

Après l’installation, tapez dans une console conda update --all pour mettre à jour1.

Un mot sur les versions multiples

Si vous avez déjà une version de Python d’installée, Conda a dû vous demander lors de l’installation s’il fallait mettre la version de Conda par défaut. Cela consiste à redéfinir le PATH pour y ajouter le dossier bin de Conda.

Ainsi, les scripts lancés en tant qu’utilisateur à la main, de même que la commande python utiliseront le python de Conda, tandis que les scripts python du système continueront à utiliser le python du système.

Si vous ne le faites pas, alors en lançant la commande python, vous arriverez sur le python système. Les bibliothèques installées avec Conda ne seront pas accessibles. Il vous faudra explicitement lancer la commande python du répertoire d’installation Conda pour avoir accès à ces dernières.


  1. L’installateur n’a pas besoin d’accès internet ; il installe les paquets embarquées dans le script bash. Ces paquets peuvent cependant être un peu anciens, d’où l’utilité d’une mise à jour. 

Gestion des paquets

Si vous avez choisi Anaconda, vous devez avoir tous les paquets nécessaires à la programmation scientifique en Python d’installé. Ce qui suit sert donc à installer d’autres paquets supplémentaires.

Si vous avez choisi Miniconda, c’est une étape obligatoire.

La documentation de référence sur la gestion des paquets est disponible en ligne. De même pour la liste des paquets disponibles. Vous pouvez aussi obtenir cette liste en faisant conda search > liste_des_paquets puis en ouvrant le fichier créé (liste_des_paquets contient toutes les versions disponibles de tous les paquets, elle est donc un peu longue).

L’installation de paquets se fait en ligne de commande à l’aide de l’exécutable conda. Si vous n’avez pas mis Conda par défaut lors de l’installation, il vous faudra lancer ces commandes depuis le répertoire bin du dossier d’installation.

Pour installer des paquets, faites

1
conda install noms_paquets

et pour mettre à jour des paquets,

1
conda update noms_paquets

noms_paquets étant les noms des paquets. Il peut s’agir du paquet Conda lui-même.

Pour tout mettre à jour, utilisez l’option --all plutôt que de donner un nom de paquet.

Pour supprimer des paquets,

1
conda remove noms_paquets

et pour lister tous les paquets installés,

1
conda list

Avec ces commandes de base, vous disposez d’un environnement fonctionnel.

Gestion des environnements

Les environnements permettent d’installer des paquets différents ou dans des versions différentes. Par exemple, si je veux Python 3 et PyQt 5 et Python 2 et PySide, c’est impossible, car le lien python ne peut pas pointer vers python2 et python3 en même temps : c’est incompatible.

L’idée est alors de créer deux environnements, d’installer dans l’un certains paquets, et d’autres paquets dans l’autre.

Il y a dans le dossier d’installation un dossier envs. Créer un environnement consiste simplement à créer un dossier dans envs, qui contiendra la même structure que le dossier principal (avec un dossier bin, lib…). Par défaut, une bibliothèque installée dans un environnement est donc inaccessible à python (car présente dans un dossier dans lequel le python ne va pas chercher).

Lorsque qu’un environnement est activé, la commande python est redirigée vers le dossier de l’environnement, un script redéfinit les dossiers dans lesquels python devra chercher des bibliothèques, lui donnant ainsi accès aux bibliothèques de l’environnement (mais lui enlevant l’accès des bibliothèques de conda en dehors de l’environnement pour éviter les incompatibilités).

Pour créer un environnement,

1
conda create --name nom_environnement noms_paquets # forme courte : -n

et pour installer un paquet dans un environnement,

1
conda install --name nom_environnement noms_paquets # forme courte : -n

Pour l’exemple précédant, il faudrait donc taper les commandes :

1
2
conda create --name monEnvPyQt5  python=3 pyqt
conda create --name monEnvPySide python=2 pyside

Listons les environnements pour nous assurer qu’ils sont créés correctement,

1
conda info --envs # forme courte : -e

Reste à activer un environnement. La commande diffère selon le système,

1
2
source activate nom_environnement # Linux, OS X
activate nom_environnement # Windows

et pour sortir d’un environnement et retourner dans l’environnement par défaut,

1
2
source deactivate # Linux, OS X
deactivate # Windows

Voilà ! Avec ces commandes, vous pouvez disposer de plusieurs environnements de développement différents qui cohabitent sans heurt.


Ce tutoriel visait à vous donner un moyen simple et efficace d’installer un (voir des !) environnement de programmation pour Python, en particulier dans le contexte de la programmation scientifique. C’est chose faite. Conda permet d’autres choses plus subtiles que celles présentées brièvement ici.

Les liens à garder dans un coin sont les suivants :

Tout ceci a pour but de vous permettre de coder dans de bonnes conditions et sans prise de tête ; maintenant, à l’abordage ! :pirate:

Remerciements

Merci à banco29510, Vayel et Karnaj pour leurs relectures lors de la bêta, et adri1 pour la validation.

5 commentaires

Super ! un petit tuto à fournir à tous nos collègues sous windows qui nous regarde avec des yeux ronds quand on leur dit « ah mais moi j’ai fait le script en python… Il va falloir que tu installes anaconda. » !

Merci !

+2 -0

Il existe aussi une version winpython pour les utilisateurs de windows. Vous pouvez y jeter un oeil si sa vous intéresse. Un IDE, QT, Conda et tout ce qu’il faut en 1 dossier facile à transporter.http://winpython.github.io/

kokod

Quelle est la différence avec ce qu’on peut trouver sur la page de téléchargement du site officiel de Python ?

Connectez-vous pour pouvoir poster un message.
Connexion

Pas encore membre ?

Créez un compte en une minute pour profiter pleinement de toutes les fonctionnalités de Zeste de Savoir. Ici, tout est gratuit et sans publicité.
Créer un compte