Python : why use a virtual environment

Python : why use a virtual environment

Python applications will often use packages and modules that don’t come as part of the standard library.


Applications will sometimes need a specific version of a library, because the application may require that a particular bug has been fixed or the application may be written using an obsolete version of the library’s interface.

This means it may not be possible for one Python installation to meet the requirements of every application.


If application A needs version 1.0 of a particular module but application B needs version 2.0, then the requirements are in conflict and installing either version 1.0 or 2.0 will leave one application unable to run.


The solution for this problem is to create a virtual environment, a self-contained directory tree that contains a Python installation for a particular version of Python, plus a number of additional packages.


Different applications can then use different virtual environments.


To resolve the earlier example of conflicting requirements, application A can have its own virtual environment with version 1.0 installed while application B has another virtual environment with version 2.0. If application B requires a library be upgraded to version 3.0, this will not affect application A’s environment.

要查看或添加评论,请登录

Boris Rose的更多文章

  • Architecture REST

    Architecture REST

    Même si j'ai déjà écrit quelques petites choses sur le sujet, mieux vaut préciser les choses. REST (Representational…

  • Passport

    Passport

    A web application needs the ability to identify users as they browse from page to page. This series of requests and…

  • Le nombre magique

    Le nombre magique

    Le "nombre magique" d'un fichier, "magic number" en anglais, est un terme utilisé en informatique pour désigner un…

  • Les API Web

    Les API Web

    Dans mon précédent article sur les API, j'avais évoqué le r?le d'intermédiaire entre un client et des ressources et…

  • API : Interface de Programmation d'Application

    API : Interface de Programmation d'Application

    En tant que développeur, j'ai l'impression d'utiliser ou de concrétiser cette notion tous les jours. Cependant, si…

  • Next.js : Template

    Next.js : Template

    Templates are similar to layouts in that they wrap each child layout or page. Unlike layouts that persist across routes…

  • SEO: Définir son type de contenu

    SEO: Définir son type de contenu

    Vous allez s?rement avoir besoin de rajouter du contenu à votre site web, que ce soit: → parce que vous devez créer des…

  • JavaScript: Encha?ner des requêtes avec les callbacks

    JavaScript: Encha?ner des requêtes avec les callbacks

    Comment faire nos 2 requêtes en parallèle, suivies d’une requête en séquence avec les callbacks? Dans le cadre de cet…

  • WCAG: Contenu web robuste

    WCAG: Contenu web robuste

    Le principe de robustesse est le plus opaque de tous dans les règles WCAG. Il a pour but de faciliter…

  • SEO: Paramétrer votre compte Google My Business

    SEO: Paramétrer votre compte Google My Business

    Google My Business sert à indiquer à Google la position de votre business sur la carte et sert à récupérer des avis. Il…

社区洞察

其他会员也浏览了