Coder dans un environnement virtuel

 Pourquoi un environnement virtuel ?

Les scripts Python utilisent parfois des bibliothèques qui ne sont pas présentes dans l'installation standard (comme Arcade par exemple).

Ou certains scripts utilisent une version plus récente ou plus ancienne d'une bibliothèque.

Pour répondre à cette problématique, il est possible de créer plusieurs environnements virtuels différents qui contiennent chacun une version précise de Python avec ses bibliothèques précises aux versions souhaitées.

Méthode pas à pas

 Création

Imaginons que nous souhaitions créer un environnement de programmation en Python pour créer des jeux en 2D avec arcade et pygame.

Dans le répertoire où nous travaillons habituellement, nous allons créer notre environnement avec la commande suivante

python3 -m venv my_python_env

Cela va créer le répertoire my_python_env avec tous les fichiers nécessaires à l'intérieur.

Activation

Une fois l'environnement créé, il faut l'activer.

  • Avec Linux ou MacOSX :
source my_python_env/bin/activate
  • Avec Windows :
my_python_env\Scripts\activate

Une fois l'environnement activé, son nom apparaît entre parenthèse avant le prompt

 Désactivation

Pour sortir de l'environnement virtuel, il suffit de taper la commande suivante :

deactivate

Le nom de l'environnement avant le prompt disparaît alors.

 Configuration de l'environnement

Une fois dans l'environnement, on peut installer les bibliothèques dont nous aurons besoin :

pip install pygame
pip install arcade

Pour connaître la liste des paquets installés dans cet environnement :

pip list

 Utilisation de l'environnement

  • en ligne de commande

Pour exécuter des scripts dans notre environnement, il suffit de d'activer l'environnement comme expliqué précédemment puis de lancer le script :

python3 le_nom_du_script.py

On remarquera que si le script utilise arcade ou pygame, il va fonctionner. Si on sort de l'environnement de travail (avec deactivate) où seule une version basique de Python est installée, il ne fonctionne pas.

  • avec l'IDE Pyzo

Pour utiliser un environnement virtuel avec Pyzo, il va falloir configurer un nouveau shell.

Pour ce faire, dans le menu de Pyzo, il faut cliquer sur Shell puis sur Configuration des shells.

Ensuite, il faut basculer EXE à python puis définir des variables d'environnement qui pointent vers le répertoire où se trouve l'environnement virtuel (voir capture ci-dessous).

Capture écran shell pyzo

  • avec codium (Visual Studio Code)

Taper CTRL + MAJ + P pour ouvrir la barre de recherche Taper select et choisir selectionner l'interpréteur Dans le menus déroulant qui s'affiche, choisir l'environnement virtuel désiré

Il n'est pas nécessaire d'activer l'environnement virtuel pour s'en servir dans les IDE.