Dans ce chapitre nous aborderons les 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 file : Numpy, Scipy. Peut-etre avez-vous deja travaille avec ces librairies ?

Si c’est ce toute premiere fois, il vous faudra des installer. Par defaut, vous les installerez dans votre ordinateur. Mais si Vous allez avoir developpe quelques projets Vous allez avoir 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’une 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 plus : de pouvoir decider quel environnement de developpement nous souhaitons choisir.

C’est exactement l’objectif des environnements virtuels : creer 1 environnement comprenant une certaine version de Python et les librairies que vous souhaitez. Si la ordinateur etait 1 immeuble, nous pourrions imaginer qu’un environnement virtuel pourrait i?tre une piece de cet immeuble dans laquelle vous installez ce que vous souhaitez. Quand vous entrez dans la piece, nos librairies installees paraissent accessibles. Mais si vous la quittez, plus rien n’existe !

Utiliser Virtualenv

Il est quelques solutions d’environnement virtuel. Dans une cas nous allons utiliser VirtualEnv.

Installation

Commencez donc via installer VirtualEnv :

Puis deplacez-vous dans votre dossier de travail.

Creer et activer un contexte virtuel

Concretement, De quelle fai§on fonctionne un environnement virtuel ?

Commencez avec creer 1 environnement virtuel en lancant la commande suivante :

Si vous travaillez avec Windows, executez la commande suivante dans PowerShell :

Elle cree votre 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 ce console.

A partir de maintenant, l’interpreteur Python utilise n’est plus celui de votre systeme mais bien celui de l’environnement virtuel. Vous pouvez le voir tres rapidement avec la prends which (UNIX) ou where (Windows) qui affiche le chemin vers l’executable :

Si vous utilisez PowerShell, lancez sa commande suivante pour afficher l’endroit duquel reste execute pip :

Mes packages installes sont egalement divers :

Si vous ouvrez un nouvelle terminal, vous constatez que l’environnement virtuel n’est jamais active :

On doit le reactiver a chaque fois que vous souhaitez l’utiliser.

Desactiver 1 environnement virtuel

Pour desactiver votre contexte virtuel, tapez juste deactivate .

Avant d’installer une librairie, verifiez que ce environnement virtuel est bien active et qu’il s’agit bien site recon de celui de votre projet !

Supprimer votre contexte virtuel

Pour supprimer votre contexte virtuel, rien En plus simple ! Commencez via le desactiver puis supprimez le repertoire.

L’utilisation tout d’un contexte virtuel est tres courante. Elle permet de ne pas avoir a poser nos dependances tout 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 ! 🙂 ), vous devez imperativement desactiver le suivi de modifications de ce environnement virtuel. Effectivement, vous ne voulez nullement envoyer concernant Github bien ce contexte virtuel !

Pour ceci, 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 a votre 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 dans Github afin que toute personne interessee puisse y avoir acci?s.

Comment ces dernieres peuvent-elles connaitre les diverses librairies employees au projet ? Elles n’auront pas acces a ce contexte virtuel. Evidemment, elles peuvent voir en bas des divers fichiers et chercher les imports. Mais cela est fastidieux et, surtout, il va i?tre impossible de connaitre les versions utilisees.

Mes librairies qui ne sont nullement standards, qui doivent via consequent etre installees, paraissent ce que nous appelons des dependances. Indeniablement, le projet reste dependant de un installation et ne est en mesure de pas fonctionner sans.

Afin de remedier a ce souci, Il est une convention : coder un fichier requirements.txt qui liste les differentes librairies utilisees ainsi que leur version.

Creer un fichier de dependances

Pypi va le Realiser automatiquement pour 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 et cela a ete genere :

Cette commande est tres utile mais peut se reveler restrictive. Pip indique Effectivement 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 votre que nous preconisons est d’ajouter a mon tour nos dependances explicitement requises par un projet.

Installer des dependances

Si un fichier requirements.txt y a deja, vous pourrez facilement en poser l’integralite des librairies en executant la commande suivante :

Parfait ! Nous avons decouvert dans votre chapitre comment utiliser un environnement virtuel et poser un fichier de dependances. Au futur chapitre nous commencerons l’analyse ! A d’emblee !


Leave a Reply

Your email address will not be published. Required fields are marked *

ACN: 613 134 375 ABN: 58 613 134 375 Privacy Policy | Code of Conduct