Come creare gli ambienti virtuali in Python con Windows e PowerShell

1 - Introduzione

Un ambiente virtuale in Python è una cartella isolata che contiene una copia indipendente dell'interprete Python e delle librerie installate. Serve a separare i progetti tra loro, evitando conflitti tra versioni di pacchetti diverse. In questo modo, ogni progetto può avere le proprie dipendenze senza influenzare il sistema globale.

2 - Inizio configurazione

Premi i tasti "Windows+X" e clicca sulla voce "Terminale". Nota: non eseguire quello con privilegi amministrativi.

Una volta aperto, viene mostrato un prompt simile al seguente, dove è possibile digitare i comandi:

PS C:\Users\NomeUtente>

Crea una cartella di prova con:

mkdir prove

Entra nella cartella con:

cd prove

3 - Creazione dell'ambiente virtuale

python -m venv .venv

Questo comando crea una cartella chiamata .venv che contiene l'ambiente virtuale isolato. Il parametro -m venv invoca il modulo venv di Python, mentre .venv è il nome della cartella che conterrà l'ambiente.

4 - Attivazione dell'ambiente virtuale

.\.venv\Scripts\Activate.ps1

Questo comando attiva l'ambiente virtuale. Dopo l'esecuzione, il prompt mostra il nome dell'ambiente tra parentesi, indicando che tutti i comandi Python e pip agiranno solo all'interno dell'ambiente isolato. Se PowerShell blocca l'esecuzione per motivi di policy, potrebbe essere necessario modificare la ExecutionPolicy, ma questa operazione non è richiesta in questa guida.

5 - Aggiornamento degli strumenti di base

python -m pip --no-cache-dir install -U pip setuptools wheel

Questo comando aggiorna i tre strumenti fondamentali di Python:

  • pip è il gestore dei pacchetti, usato per installare e disinstallare librerie.
  • setuptools è lo strumento che permette di costruire e installare pacchetti Python.
  • wheel è il formato di pacchetto precompilato che velocizza l'installazione.

L'opzione --no-cache-dir evita di usare la cache locale dei pacchetti scaricati, forzando il download fresco. L'opzione -U indica l'aggiornamento all'ultima versione disponibile.

6 - Installazione delle librerie principali

pip install --no-cache-dir numpy pillow requests
  • numpy è la libreria fondamentale per il calcolo numerico e matriciale in Python. Fornisce array multidimensionali e funzioni matematiche veloci, ed è la base di gran parte dell'ecosistema scientifico.
  • pillow è la libreria per la manipolazione delle immagini. Permette di aprire, modificare, convertire e salvare immagini in molti formati.
  • requests è la libreria per effettuare richieste HTTP in modo semplice. Serve per comunicare con API web, scaricare pagine e inviare dati a server.

7 - Dove trovare altre librerie

Il sito di riferimento è:

https://pypi.org

PyPI (Python Package Index) è il repository ufficiale dei pacchetti Python. Qui si possono cercare librerie per qualsiasi esigenza.

Per verificare che una libreria sia affidabile e non presenti problemi:

  • Controllare il numero di download e la data dell'ultimo aggiornamento.
  • Leggere la descrizione e la documentazione ufficiale linkata.
  • Verificare la presenza di un repository pubblico del codice sorgente.
  • Controllare che il manutentore sia attivo e che le issue vengano gestite.
  • Preferire pacchetti con molte stelle e fork se il repository è su piattaforme note.
  • Evitare pacchetti con nomi simili a quelli famosi ma con piccole differenze, tipici di tentativi di contraffazione.

8 - Installazione di librerie da sorgente

Metodo classico con setup.py:

python setup.py build
python setup.py install

Il primo comando compila il pacchetto nella cartella di build, il secondo lo installa nell'ambiente corrente.

Uso moderno con pip:

pip install .

Questo comando installa il pacchetto presente nella cartella corrente usando il sistema di build moderno definito in pyproject.toml, senza invocare direttamente setup.py.

9 - Creare il file requirements.txt

pip freeze > requirements.txt

Questo comando scrive nel file requirements.txt l'elenco di tutte le librerie installate nell'ambiente con le relative versioni esatte. Serve per riprodurre lo stesso ambiente su un'altra macchina.

10 - Disinstallare tutte le librerie

pip uninstall -y -r requirements.txt

Questo comando disinstalla tutte le librerie elencate nel file requirements.txt. L'opzione -y conferma automaticamente senza chiedere, l'opzione -r indica di leggere l'elenco dal file specificato.

11 - Uscire dall'ambiente virtuale

deactivate

Questo comando disattiva l'ambiente virtuale e riporta il terminale all'uso dell'interprete Python globale del sistema.

12 - Eliminare l'ambiente virtuale

Remove-Item .venv -Recurse -Force

Questo comando elimina definitivamente la cartella .venv e tutto il suo contenuto. L'opzione -Recurse permette di cancellare anche le sottocartelle, l'opzione -Force evita richieste di conferma e rimuove anche file protetti o di sola lettura.

Torna agli appunti v1.0 — 21-09-2026