Ciao a tutti e benvenuti in questa piccola guida sul concetto di virtual environment in Python.
Che cos’è un virtual environment?
Un Virtual environment (virtual env) è uno strumento che ci permette di creare diversi ambienti di sviluppo per diversi progetti Python. Per capire meglio a cosa server virtual env e quali sono i suoi vantaggi, vediamo un esempio:
Immaginiamo di avere 3 o 4 progetti Python sul nostro PC i quali dipendono su una diversa versione di un modulo esterno (Per esempio Flask).
Se per qualche motivo andiamo ad aggiornare il modulo Flask globalmente sul nostro PC, Alcuni dei nostri progetti potrebbero causare dei problemi o non funzionare del tutto.
Per evitare questo problema, possiamo creare degli ambienti di sviluppo isolati l’uno dall’altro dove possiamo installare la versione di Flask specifica per il nostro progetto. In questo modo diversi progetti possono dipendere da diverse versioni di Flask, ma comunque risiedere sullo stesso PC.
Vediamo meglio come funziona virtual environment con un esempio pratico
Come creare un virtual environment (virtual env) in Python
Per prima cosa dobbiamo assicurarci di avere virtual env installato sul nostro pc per evitare l’errore: Virtualenv command not found.
Per installare virtual env sul vostro PC dovete eseguire il seguente comando dal terminal:
pip install virtualenv
Una volta installato virtual env, possiamo continuare creando il nostro primo environment.
Dal terminal del vostro PC navigate nella directory del vostro progetto, o create una nuova directory. Una volta nella directory desiderata, eseguite il comando:
virtualenv <nome-dell-env>
Sostituite <nome-dell-env>
virtualenv env
Ora che abbiamo creato il virtual env, dobbiamo attivarlo. Per attivarlo basta eseguire questo comando dalla stesa directory dove abbiamo creato l’env:
source <nome-dell-env>/bin/activate
O nel nostro caso
source env/bin/activate
Se abbiamo attivato il virtual environment in modo corretto dovremmo vedere il nome dell’ambiente tra parentesi nel nostro prompt.
Per esempio:
(env) test@ciao $
Come installare un modulo in un virtual env
Per installare un modulo esclusivamente all’interno di un virtual env, basta semplicemente eseguire un pip install avendo il virtual env attivato. Per esempio se vogliamo fare un test possiamo installare numpy con pip install numpy .
Per verificare se il modulo è stato correttamente installato possiamo eseguire il comando:
pip list
Questo comando ci mostra in output tutti i moduli installati. Siccome ci troviamo all’interno di un virtual environment, il comando dovrebbe mostrarci solamente numpy e le sue dependency.
Spero questa guida vi sia stata d’aiuto e che ora abbiate un’idea di cosa sia un virtual environment, come crearlo e come usarlo. Se avete qualche domanda non esitate a commentare in basso, risponderò appena posso :)
Ciao e ci vediamo alla prossima :)