requirements.txt è lo standard di settore per specificare e gestire le dipendenze nei progetti Python. Questa guida mostra come creare, configurare e usare requirements.txt per garantire coerenza tra gli ambienti di sviluppo e di produzione.
Che cos’è un file requirements.txt?
Un filerequirements.txt elenca tutti i pacchetti Python esterni di cui il tuo progetto ha bisogno, con le loro versioni specifiche. Questo permette:
- A te e al tuo team di mantenere ambienti identici
- Ai nuovi collaboratori di riprodurre esattamente l’ambiente
- Al deploy su Square Cloud di funzionare con le dipendenze corrette
1
Crea e attiva un ambiente virtuale
Lavorare all’interno di un ambiente virtuale è essenziale per mantenere le dipendenze del tuo progetto isolate dal sistema Python globale. Questo evita conflitti di versione e garantisce la riproducibilità.Crea l’ambiente virtuale nella radice del tuo progetto (usa Attivalo con uno dei comandi seguenti, a seconda del tuo sistema:Windows:macOS/Linux:Poi installa i pacchetti che il tuo progetto usa, ad esempio:
python3 se python non viene trovato su macOS/Linux):2
Elenca le dipendenze del progetto
Opzione A: Genera con pip freeze (Consigliata)
Con l’ambiente virtuale attivo, scrivi nel file ogni pacchetto installato con la sua versione esatta:pip freeze elenca solo i pacchetti installati in esso (le tue dipendenze e le loro sotto-dipendenze), già fissati con ==.Al di fuori di un ambiente virtuale,
pip freeze elenca tutti i pacchetti installati sul tuo sistema. Rivedi il file e rimuovi ciò che il tuo progetto non usa.Opzione B: Creazione manuale
Crea un filerequirements.txt nella radice del tuo progetto ed elenca i pacchetti che il tuo progetto usa, con le loro versioni:requirements.txt
3
Rivedi e valida le dipendenze
Apri il file
requirements.txt nel tuo editor di testo e:- Rivedi l’elenco dei pacchetti
- Rimuovi le dipendenze non necessarie
- Aggiorna le versioni se necessario
- Assicurati di usare versioni esatte (con
==)
4
Installa le dipendenze
Per installare tutte le dipendenze elencate:Questo comando garantisce che tutti i collaboratori e gli ambienti di produzione usino esattamente le stesse versioni.
5
Versiona e condividi
Con
requirements.txt pronto, puoi:- Condividerlo con il tuo team
- Metterlo sotto controllo di versione (git)
- Assicurarti che tutti lavorino con le stesse versioni
- Semplificare il deploy su Square Cloud
requirements.txt viene rilevato automaticamente e le sue dipendenze vengono installate con pip install -r requirements.txt prima dell’avvio della tua app.Buone pratiche e consigli
- Mantieni aggiornato: Rivedi e aggiorna regolarmente
requirements.txtman mano che aggiungi nuove dipendenze - Usa versioni esatte: Usa sempre
==invece di>,>=o nessuna versione per evitare sorprese in produzione - Rivedi pip freeze: Se usi
pip freeze, rivedi il file prima del commit, poiché potrebbe includere pacchetti ausiliari non necessari - Versionamento: Effettua il commit di
requirements.txtsu git per tracciare le modifiche alle dipendenze - Ambiente isolato: Mantieni un ambiente virtuale per progetto per evitare conflitti globali
- Prova in locale: Prima del deploy, testa il file con
pip install -r requirements.txtin un nuovo ambiente
Prossimi passi
Con il tuo filerequirements.txt configurato:
- Effettua il commit sul tuo repository Git.
- Ospita il tuo progetto con la guida al runtime Python, oppure segui una guida a un framework: Django, Flask o FastAPI.
- Fai il deploy automatico da GitHub a ogni push.

