virtualenvAan de slag met virtualenv


Opmerkingen

Deze sectie biedt een overzicht van wat virtualenv is en waarom een ontwikkelaar het misschien wil gebruiken.

Het moet ook alle grote onderwerpen binnen virtualenv vermelden en een link naar de gerelateerde onderwerpen bevatten. Aangezien de documentatie voor virtualenv nieuw is, moet u mogelijk eerste versies van die gerelateerde onderwerpen maken.

Installatie of instellingen

Virtuele omgevingstool ( virtualenv ) wordt gebruikt om verschillende projecten en hun afhankelijkheden te isoleren door individuele pythonomgevingen voor elk van hen te creëren. Het is alsof je een pakket lokaal (en niet wereldwijd) installeert, vergelijkbaar met de installatieoptie van het npm-pakket . Hierna volgt een voorbeeld om virtualenv te installeren en te testen voor het maken van twee projecten (Project1-A Django-applicatie en Project2-A Flask-applicatie):

  1. Controleer eerst of virtualenv al is geïnstalleerd $ virtualenv --version
  2. Voer $ pip install virtualenv (voor Mac en Linux) of $ sudo apt-get install python-virtualenv voor Ubuntu uit, easy_install voor Windows om de python-omgeving te installeren.
  3. $ mkdir Project1 en $ cd Project1
  4. Voer $ virtualenv venvp1 en dit zou een map venvp1 in de map Project1 creëren.
  5. Om de omgeving te activeren, voer je source venvp1/bin/activate (indien Linux) en venvp1\Scripts\activate (als Windows) uit en verandert prompt in (venvp1)Your-Computer:your_project UserName$)
  6. Voer pip install Django om pip install Django te installeren voor project1 en deactivate (indien nodig) om terug te keren naar de wereldwijde omgeving.
  7. Herhaal stap 3-6 voor de Flask-toepassing met een andere map, virtualenv-namen en pip install Flask om pip install Flask te installeren.

Zodra bovenstaande stappen zijn uitgevoerd (zonder fouten), zou men (mogelijk en) tegelijkertijd zonder conflicten tussen beide omgevingen kunnen werken.

Opmerkingen:

  1. virtualenvwrapper is een ander handig hulpmiddel dat een uitgebreide versie van virtualenv is, hoewel de installatieprocedure voor beide bijna hetzelfde is.
  2. Het uitvoeren van de opdracht virtualenv met --no-site-packages sluit de wereldwijd geïnstalleerde pakketten uit.
  3. Om de huidige omgevingstoestand te bevriezen, voert u $ pip freeze > installedpkgp1.txt . Dit tekstbestand bevat een lijst met geïnstalleerde pakketten (inclusief hun versies) in de huidige omgeving. Als het nodig is om dezelfde omgeving in een andere map (of machine) te implementeren, zou het uitvoeren van de opdracht $ pip install -r installedpkgp1.txt dezelfde omgeving creëren.
  4. Handige commando's:
  • lsvirtualenv - lijst van alle omgevingen
  • cdvirtualenv - goto momenteel geactiveerde virtuele omgeving
  • cdsitepackages - net als de vorige, maar gaat rechtstreeks naar de site-packages directory
  • lssitepackages - toont de inhoud van de site-packages directory