Python virtual environment: che cos’è e come funziona

di Lorenzo Neri

Che cos’è il virtual environment in Python? Come funziona? In questo articolo andiamo a scoprire questi aspetti.

Se non sei proprio fresco di studi, “virtual environment” ovvero “ambiente virtuale” credo tu sappia cosa intenda: se così non fosse, beh… Tranquillo: te lo spiego strada facendo.

Ciao mi chiamo Lorenzo Neri e sono un informatico: realizzo contenuti per aiutare le persone a padroneggiare l’arte del nuovo millennio, ovvero l’informatica!

Che cos’è un ambiente virtuale in Python

Un ambiente virtuale all’interno di Python è un ambiente vero e proprio isolato da tutte le altre risorse presenti sulla tua macchina.

Che significa quella frase scritta in tecnichese?

Immaginatelo così.

Hai il tuo interprete Python, librerie, pacchetti e script.

A un certo punto, li vuoi isolare rispetto al tuo sistema operativo, altri pacchetti e script installati a livello di sistema.

In parole ancora più povere ecco che cos’è un virtual environment: un ambiente isolato da tutte le altre risorse Python presenti a sistema.

Quindi, quando creiamo un ambiente virtuale in Python, andiamo a creare una sorta di “copia” separata che “gira” da sola in maniera indipendente dalle altre presenti sulla tua macchina.

Com’è strutturato un Python virtual environment

Un ambiente virtuale in Python, è molto banalmente una cartella che contiene file eseguibili Python e altri file che appunto indicano “Hey, questa cartella è un ambiente virtuale”.

Non solo.

Al suo interno i software di installazione e gestione dei pacchetti, per esempio penso a setuptools e pip, funzionano allo stesso esatto identico modo di sempre.

Ma che cosa significa davvero ciò che ho scritto una frase fa?

Significa che all’interno dell’ambiente virtuale, i pacchetti Python verranno installati direttamente dentro ad esso senza doverlo specificare esplicitamente.

Quindi, capito come funziona un virtual environment, cerchiamo di capire come crearlo.

Come creare un ambiente virtuale in Python

Un ambiente virtuale in python, si crea con il seguente comando:

python3 -m venv percorso/dove/creare/il/virtual/environment

Lanciando questo comando abbiamo creato il nostro virtual environment. Ma di per sé cosa succede di preciso?

La prima cosa che succede: crea una cartella, se non esiste già, in cui al suo interno troveremo dei file e delle cartelle in questa struttura:

cartellaDelVenv
  |____bin/
  |____include/
  |____lib/
  |____pyenv.cfg

Parliamo un attimo del file “pyenv.cfg” e del contenuto della cartella appena creata

Il contenuto dell’ambiente virtuale appena creato

Si tratta di un file che contiene una chiave “home” che punta all’installazione Python da cui abbiamo lanciato il comando per creare il virtual environment stesso.

La cartella “bin” contiene al suo interno una copia dei file binary Python.

All’interno di “lib” troviamo un po’ di cose.

Dentro di lei, troviamo una cartella: “/PythonX.Y/site-packages” che su Windows sarà invece “\siste-packages”: ti lascio indovinare cosa ci sia dentro!

In conclusione, ti lascio anche le referenze alla documentazione ufficiale di Python 😉

Continua a scoprire di più con questi articoli!

Lascia un commento

Questo sito potrebbe fare uso di cookie e siccome l'UE mi obbliga a fartelo presente, eccoti il classico banner dove puoi decidere come gestirli. Accetta Leggi di più