📦 Come gestire le librerie Python quando sposti un progetto su un altro PC

 

Quando si programma in Python è normale dover installare librerie esterne usando pip.
Prima o poi però sorge una domanda fondamentale:

Cosa succede quando porto il mio programma Python su un altro PC?

In questo articolo vedremo:

  • cosa accade realmente
  • perché il programma può smettere di funzionare
  • dove eseguire i comandi (pipvenv, ecc.)
  • le soluzioni corrette in base al tipo di progetto
🔗 Ti piace Techelopment? Dai un'occhiata al sito per tutti i dettagli!

🔍 Il problema di base

Le librerie installate con pip:

  • non fanno parte del codice
  • vengono installate nell’ambiente Python del computer

Se copi solo i file .py su un altro PC, il programma:

  • partirà solo se tutte le librerie richieste sono già installate
  • altrimenti darà errori come:
ModuleNotFoundError: No module named 'nome_libreria'

🗂 Struttura tipica di un progetto Python

Esempio:

mio_progetto/
│
├── main.py
├── utils.py
├── requirements.txt
└── venv/   (opzionale)

📌 Tutti i comandi che vedremo vanno lanciati nella cartella del progetto, cioè mio_progetto/, salvo diversa indicazione.


✅ Soluzione 1: requirements.txt (metodo standard)

È il metodo più comune per condividere un progetto Python.

📍 Dove lanciare i comandi

👉 Nella cartella del progetto

cd percorso/mio_progetto

🔹 Creare requirements.txt

Sul PC di sviluppo:

pip freeze > requirements.txt

Questo file conterrà l’elenco completo delle librerie usate, ad esempio:

requests==2.31.0
numpy==1.26.2
pandas==2.1.3

📌 Il file requirements.txt va copiato insieme al progetto.


🔹 Installare le librerie su un nuovo PC

Dopo aver copiato il progetto:

cd percorso/mio_progetto
pip install -r requirements.txt

📌 È fondamentale essere nella stessa cartella in cui si trova requirements.txt.


✔ Pro e ❌ Contro

✔ Pro

  • semplice
  • standard
  • usato ovunque

❌ Contro

  • serve Python installato
  • serve usare il terminale

🧪 Soluzione 2: Ambiente virtuale (venv)

Un ambiente virtuale isola le librerie di un progetto da quelle di sistema.


🔹 Creare l’ambiente virtuale

📍 Nella cartella del progetto

cd mio_progetto
python -m venv venv

Risultato:

mio_progetto/
├── venv/
├── main.py
└── requirements.txt

🔹 Attivare l’ambiente virtuale

Windows

venv\Scripts\activate

Linux / macOS

source venv/bin/activate

📌 Dopo l’attivazione, tutti i pip install agiranno solo dentro il progetto.


🔹 Installare le librerie

pip install -r requirements.txt

✔ Pro e ❌ Contro

✔ Pro

  • niente conflitti tra progetti
  • metodo professionale

❌ Contro

  • richiede un minimo di esperienza
  • non ideale per utenti finali

🚀 Soluzione 3: Creare un eseguibile (PyInstaller)

Questa è la soluzione ideale se:

  • vuoi distribuire il programma a utenti non tecnici
  • non vuoi far installare Python o librerie

🔹 Installare PyInstaller

📍 Ovunque, ma consigliato dentro il progetto o nel venv:

pip install pyinstaller

🔹 Creare l’eseguibile

📍 Nella cartella del progetto

pyinstaller --onefile main.py

Risultato:

dist/
└── main.exe

📌 L’eseguibile:

  • contiene Python
  • contiene tutte le librerie
  • funziona anche su PC senza Python

⚠ Nota importante

  • L’eseguibile va creato su ogni sistema operativo
  • Un .exe Windows non funziona su macOS o Linux

🧠 Riepilogo finale

Scenario Soluzione Dove lanciare i comandi
Condividere codice requirements.txt cartella del progetto
Progetto strutturato venv + requirements.txt cartella del progetto
Utenti finali PyInstaller cartella del progetto

✅ Conclusione

Quando porti un programma Python su un altro PC:

  • il codice da solo non basta
  • le librerie vanno reinstallate o incluse

📌 La cartella del progetto è il punto di riferimento principale per quasi tutti i comandi.



Follow me #techelopment

Official site: www.techelopment.it
facebook: Techelopment
instagram: @techelopment
X: techelopment
Bluesky: @techelopment
telegram: @techelopment_channel
whatsapp: Techelopment
youtube: @techelopment