Treci la conținutul principal

Mediul virtual Python

Imaginează-ți că îi dai fiecărui proiect Python propriul spațiu de lucru privat pe calculatorul tău. Asta este un mediu virtual: un loc izolat în care poți rula și testa un proiect.

Dependențele fiecărui proiect rămân în interiorul lui, așa că nu pot încurca alte proiecte sau instalarea ta principală de Python.

Poți să-ți imaginezi fiecare mediu ca pe o cutie separată. Fiecare cutie:

  • Vine cu propriul interpretor Python
  • Conține propria colecție de pachete instalate
  • Rămâne izolată de toate celelalte medii virtuale
  • Poate folosi o altă versiune a unui pachet decât altă cutie

De ce merită efortul? Mediile virtuale:

  • Împiedică proiectele să intre în conflict din cauza versiunilor de pachete
  • Fac un proiect mai ușor de mutat și de reprodus
  • Păstrează ordonată instalarea Python din sistem
  • Îți permit să testezi cu mai multe versiuni de Python

Crearea unui mediu virtual

Python include deja instrumentul de care ai nevoie: modulul încorporat venv.

Pentru a crea un mediu, deschide linia de comandă, mergi în folderul care trebuie să conțină proiectul tău și introdu această comandă:

Python construiește apoi mediul pentru tine, într-un folder nou numit „myfirstproject”, plin cu subfoldere și fișiere.

main.py
python -m venv myfirstproject

Activarea mediului virtual

Un mediu nu face nimic până când nu este activat, iar această comandă face exact asta:

După ce rulează, promptul tău se schimbă și îți arată în ce mediu lucrezi acum.

main.py
# Windows:
myfirstproject\Scripts\activate

# macOS/Linux:
source myfirstproject/bin/activate

Instalarea pachetelor

Cât timp mediul este activ, poți folosi pip pentru a instala pachete direct în el.

Hai să încercăm cu un pachet numit „cowsay”:

main.py
pip install cowsay

Folosirea pachetului

Acum că „cowsay” este disponibil în mediu, hai să-l punem să deseneze o vacă ce vorbește.

Începe prin a crea un fișier numit test.py. Merge orice locație de pe calculatorul tău; în această lecție îl ținem lângă folderul myfirstproject, nu în el.

Deschide fișierul și adaugă liniile de mai jos:

Apoi, cu mediul încă activ, rulează fișierul:

Exemplu

Conținutul fișierului test.py:

Prompt
Scrie un program Python care folosește pachetul cowsay. Importă cowsay și folosește cowsay.cow() pentru a afișa „Bună dimineața, muuu!”.
Ieșire: program Python complet
main.py
python test.py

Dezactivarea mediului virtual

Când ai terminat lucrul, această comandă dezactivează mediul:

Te întorci astfel la linia de comandă obișnuită.

Dacă rulezi test.py de aici, din afara mediului, apare o eroare, deoarece „cowsay” există doar în mediul virtual.

Notă: Dezactivarea nu șterge myfirstproject. Activează-l din nou și test.py va rula și va afișa din nou desenul.

main.py
deactivate

Ștergerea unui mediu virtual

Mediile virtuale sunt și ușor de eliminat, dacă dintr-un motiv oarecare nu mai vrei unul. Niciun alt proiect nu depinde de el, așa că ștergerea lui elimină doar modulele și fișierele din interiorul lui.

Ca să elimini un mediu, tot ce trebuie să faci este să ștergi folderul cu tot ce conține, fie direct în sistemul de fișiere, fie din linia de comandă:

main.py
# Windows:
rmdir /s /q myfirstproject

# macOS/Linux:
rm -rf myfirstproject