Virtualna okruženja mogu se opisati kao izolirani instalacijski direktoriji. Ova izolacija omogućuje vam lokaliziranje instalacije ovisnosti vašeg projekta, bez prisiljavanja da ih instalirate na cijelom sustavu.
Zamislite da imate dvije aplikacije, App1 i App2. Oboje koriste paket Pak, ali zahtijevaju različite verzije. Ako instalirate Pak verziju 2.3 za App1, nećete moći pokrenuti App2 jer zahtijeva verziju 3.1.
Tu virtualna okruženja dobro dođu.
Prednosti:
- Možete imati više okruženja, s više skupova paketa, bez sukoba među njima. Na taj se način mogu istovremeno zadovoljiti različiti zahtjevi projekata.
- Možete jednostavno objaviti svoj projekt s vlastitim ovisnim modulima.
Evo dva načina na koja možete stvoriti Python virtualna okruženja.
Virtualenv
virtualenv
je alat koji se koristi za stvaranje izoliranih Python okruženja. Stvara mapu koja sadrži sve potrebne izvršne datoteke za upotrebu paketa koji bi Python projektu trebali.
Možete ga instalirati sa pip
:
pip install virtualenv
Provjerite instalaciju sljedećom naredbom:
virtualenv --version
Stvorite okruženje
Da biste stvorili virtualno okruženje, upotrijebite:
virtualenv --no-site-packages my-env
Ovo stvara mapu u trenutnom direktoriju s imenom okoline ( my-env/
). Ova mapa sadrži direktorije za instaliranje modula i Python izvršnih datoteka.
Također možete odrediti verziju Pythona s kojom želite raditi. Samo se posluži argumentom --python=/path/to/python/version
. Na primjer python2.7
:
virtualenv --python=/usr/bin/python2.7 my-env
Popis okruženja
Dostupna okruženja možete navesti na sljedeći način:
lsvirtualenv
Aktivirajte okruženje
Prije nego što počnete koristiti okruženje, morate ga aktivirati:
source my-env/bin/activate
To osigurava da my-env/
se koriste samo paketi ispod .
Primijetit ćete da je naziv okoline prikazan na lijevoj strani upita. Na taj način možete vidjeti koje je aktivno okruženje.
Instalirajte pakete
Pakete možete instalirati jedan po jedan ili postavljanjem requirements.txt
datoteke za svoj projekt.
pip install some-package pip install -r requirements.txt
Ako želite stvoriti requirements.txt
datoteku iz već instaliranih paketa, pokrenite sljedeću naredbu:
pip freeze > requirements.txt
Datoteka će sadržavati popis svih paketa instaliranih u trenutnom okruženju i njihove odgovarajuće verzije. To će vam pomoći da svoj projekt objavite s vlastitim ovisnim modulima.
Deaktivirajte okruženje
Ako ste završili s radom s virtualnim okruženjem, možete ga deaktivirati pomoću:
deactivate
To vas vraća na zadani sistemski tumač Python sa svim instaliranim knjižnicama.
Izbrišite okruženje
Jednostavno izbrišite mapu okruženja.
Conda
Conda
je paket, upravljanje ovisnostima i okruženjem za mnoge jezike, uključujući Python.
Da biste instalirali Condu, slijedite ove upute.
Stvorite okruženje
Da biste stvorili virtualno okruženje, upotrijebite:
conda create --name my-env
Conda će stvoriti odgovarajuću mapu unutar instalacijskog direktorija Conda.
Također možete odrediti s kojom verzijom Pythona želite surađivati:
conda create --name my-env python=3.6
Popis okruženja
Sva dostupna okruženja možete navesti sa:
conda info --envs
Aktivirajte okruženje
Prije nego što počnete koristiti okruženje, morate ga aktivirati:
source activate my-env
Instalirajte pakete
Isto kao i kod virtualenv
.
Deaktivirajte okruženje
Ako ste završili s radom s virtualnim okruženjem, možete ga deaktivirati pomoću:
source deactivate
Uklonite okruženje
Ako želite ukloniti okruženje iz Conde, upotrijebite:
conda remove --name my-env