Dans votre chapitre nous aborderons nos notions suivantes :
Travailler dans un contexte virtuel
Installer des librairies via pip en se basant concernant un fichier de dependances
Vous utiliserez plusieurs librairies dans votre lei§ons : Numpy, Scipy. Peut-etre avez-vous deja travaille avec ces librairies ?
Si c’est votre premiere fois, il vous faudra nos installer. Par defaut, vous les installerez dans votre ordinateur. Mais si vous aurez developpe diverses projets vous aurez peut-etre la desagreable surprise de constater des erreurs dues a des versions differentes.
Imaginons que vous travailliez avec la version 1.0 de Librairie1 dans un projet X. Six mois apri?s, vous avez de nouveau besoin de cette librairie mais la version a change, il s’agit desormais d’la 1.1. Vous installez donc la nouvelle version qui, elle-meme, depend d’autres modules ! Tres vite, un chateau de cartes instable s’installe dans votre ordinateur.
L’ideal, me direz-vous, serait de pouvoir isoler les librairies installees par projet. Ou meme mieux : de pouvoir decider quel environnement de developpement nous souhaitons utiliser.
C’est exactement l’objectif des environnements virtuels : creer 1 contexte comprenant une certaine version de Python et les librairies que vous souhaitez. Si votre ordi etait un immeuble, nous pourrions imaginer qu’un environnement virtuel pourrait i?tre une piece de cet immeuble dans laquelle vous installez votre que vous souhaitez. Quand vous entrez dans la piece, les librairies installees paraissent accessibles. Mais si vous la quittez, plus rien n’existe !
Utiliser Virtualenv
Il y a quelques solutions d’environnement virtuel. Dans une cas nous allons se servir de VirtualEnv.
Installation
Commencez donc par installer VirtualEnv :
Puis deplacez-vous dans votre dossier d’embauche.
Creer et activer un environnement virtuel
Concretement, comment fonctionne votre contexte virtuel ?
Commencez par creer 1 contexte virtuel en lancant la commande suivante :
Si vous travaillez avec Windows, executez la commande suivante au sein d’ PowerShell :
Elle cree un dossier env utilisant Python3 dans le repertoire courant.
Pour activer l’environnement, ecrivez J’ai commande suivante :
Si vous travaillez avec PowerShell, executez la commande suivante :
Vous constatez alors que l’environnement virtuel est indique entre parentheses sur la gauche de votre console.
A partir de maintenant, l’interpreteur Python utilise n’est plus celui de votre systeme mais bien celui de l’environnement virtuel. Vous pourrez le voir fort rapidement en utilisant la achat which (UNIX) ou where (Windows) qui affiche le chemin vers l’executable :
Si vous utilisez PowerShell, lancez la commande suivante pour afficher la zone duquel est execute pip :
Mes packages installes seront egalement differents :
Si vous ouvrez 1 autre terminal, vous constatez que l’environnement virtuel n’est gui?re active :
On doit le reactiver a chaque fois que vous souhaitez l’utiliser.
Desactiver un environnement virtuel
Pour desactiver votre contexte virtuel, tapez simplement deactivate .
Avant d’installer une librairie, verifiez que votre contexte virtuel est bien active et qu’il s’agit beaucoup de celui de ce projet !
Supprimer votre environnement virtuel
Pour supprimer un environnement virtuel, rien En plus simple ! Commencez avec le desactiver puis supprimez le repertoire.
L’utilisation d’un contexte virtuel est tres courante. Elle permet de ne point avoir a poser des dependances d’un projet dans le systeme d’exploitation et facilite la collaboration.
Desactiver le suivi Git
Si vous utilisez Git (et j’espere beaucoup que oui ! 🙂 ), il faudra imperativement desactiver le suivi de modifications de ce contexte virtuel. En effet, vous ne voulez nullement envoyer concernant Github bien votre contexte virtuel !
Pour ce qui, creez un fichier .gitignore et ajoutez a l’interieur la ligne suivante :
Elle indique a Git d’ignorer le dossier env .
Si la environnement virtuel porte un nouvelle nom, vous devez egalement le changer a votre endroit-la !
Un fichier de dependances
Imaginons a present que le chantier soit fini. Vous le publiez via Github afin que toute personne interessee puisse y avoir acci?s.
Comment ces dernieres peuvent-elles connaitre des diverses librairies employees dans le projet ? Elles n’auront jamais acces a votre environnement virtuel. Bien sur, elles vont pouvoir analyser en haut des divers fichiers et chercher nos imports. Mais cela est fastidieux et, surtout, il sera impossible de connaitre les versions utilisees.
Mes librairies qui ne sont pas standards, qui doivent via consequent etre installees, sont votre que nous appelons des dependances. Par exemple, le projet est dependant de un installation et ne peut gui?re fonctionner sans.
Afin de remedier a votre souci, il y a une convention : creer votre fichier requirements.txt qui liste les plusieurs librairies utilisees ainsi que un version.
Creer un fichier de dependances
Pypi peut le Realiser directement Afin de vous ! Pour i§a, executez la commande suivante.
Cette commande «gele» nos librairies employees ainsi que leur version en les listant dans un document.
Si vous utilisez PowerShell, executez la commande suivante :
Voici cela fut genere :
Cette commande est fort utile mais peut s’averer restrictive. Pip indique en effet l’ensemble des librairies utilisees, y compris des librairies fondamentales telles que packaging ou six que vous n’avez pas besoin d’installer. C’est pourquoi ce que nous preconisons est d’ajouter a la main nos dependances explicitement requises par un projet.
Installer des dependances
Si 1 fichier requirements.txt y a deja, vous pouvez sans probli?me en poser l’integralite des librairies en executant la commande suivante :
Parfait ! Nous avons surpris dans votre chapitre De quelle fai§on choisir un environnement virtuel et installer un fichier de dependances. Au futur chapitre nous commencerons l’analyse ! A tout de suite !