„Mediile virtuale” Python permit instalarea pachetelor Python într-o locație izolată pentru o anumită aplicație, mai degrabă decât instalarea globală. Dacă doriți să instalați în siguranță instrumente de linie de comandă global, consultați Instalarea instrumentelor de linie de comandă independente.
Imaginați-vă că aveți o aplicație care are nevoie de versiunea 1 a LibFoo, dar o altă aplicație necesită versiunea 2. Cum puteți utiliza ambele aplicații? Dacă instalați totul în /usr/lib/python3.6/site-packages (sau oricare ar fi locația standard a platformei dvs.), este ușor să ajungeți într-o situație în care actualizați neintenționat o aplicație care nu ar trebui actualizată.
Sau, mai general, ce se întâmplă dacă doriți să instalați o aplicație și să o lăsați a;a cum e? Dacă o aplicație funcționează, orice modificare a bibliotecilor sale sau a versiunilor bibliotecilor respective poate rupe aplicația.
De asemenea, ce se întâmplă dacă nu puteți instala pachete în directorul global site-pachete? De exemplu, pe o gazdă partajată.
În toate aceste cazuri, mediile virtuale vă pot ajuta. Au propriile lor directoare de instalare și nu partajează biblioteci cu alte medii virtuale.
În prezent, există două instrumente comune pentru crearea mediilor virtuale Python:
- venv este disponibil în mod implicit în Python 3.3 și versiunile ulterioare și instalează instrumente pip și setuptools în mediile virtuale create în Python 3.4 și versiunile ulterioare.
- virtualenv trebuie instalat separat, dar acceptă Python 2.7+ și Python 3.3+, iar pip, setuptools și wheel sunt întotdeauna instalate în mod implicit în mediile virtuale create (indiferent de versiunea Python).
Utilizarea de bază este astfel:
Folosind venv:
py -m venv <DIR>
<DIR>\Scripts\activate
F|olosind virtualenv:
virtualenv <DIR>
<DIR>\Scripts\activate
Pentru mai multe informații, consultați documentația venv sau virtualenv.
Utilizarea source sub shell Unix asigură faptul că variabilele mediului virtual sunt setate în shell-ul curent și nu într-un subproces (care apoi dispare, neavând niciun efect util).
În ambele cazuri de mai sus, utilizatorii Windows ar trebui să nu folosească comanda source, ci ar trebui să ruleze scriptul de activare direct din shell-ul comenzii astfel:
<DIR>\Scripts\activate
Gestionarea directă a mai multor medii virtuale poate deveni plictisitoare, astfel încât tutorialul de gestionare a dependenței introduce un instrument de nivel superior, Pipenv, care gestionează automat un mediu virtual separat pentru fiecare proiect și aplicație la care lucrați.
Sursa: Adam Marcus, and Eugene Wu. RES.6-009 How to Process, Analyze and Visualize Data. January IAP 2012. Massachusetts Institute of Technology: MIT OpenCourseWare. Licența: Creative Commons BY-NC-SA.. Traducere și adaptare Nicolae Sfetcu
Articol sub licența Creative Commons BY-NC-SA
Lasă un răspuns