Il 0% ha trovato utile questo documento (0 voti)
5 visualizzazioni6 pagine

Lezione Venv Python

La lezione introduce l'uso di VENV per l'isolamento delle dipendenze in progetti Python, evidenziando la creazione, attivazione e disattivazione di ambienti virtuali. Gli studenti apprenderanno a gestire le dipendenze tramite il file requirements.txt e a seguire le best practices per garantire la riproducibilità del progetto. Un esercizio pratico permetterà di applicare le conoscenze acquisite, creando un ambiente virtuale e installando pacchetti.

Caricato da

fmonge
Copyright
© All Rights Reserved
Per noi i diritti sui contenuti sono una cosa seria. Se sospetti che questo contenuto sia tuo, rivendicalo qui.
Formati disponibili
Scarica in formato ODT, PDF, TXT o leggi online su Scribd
Il 0% ha trovato utile questo documento (0 voti)
5 visualizzazioni6 pagine

Lezione Venv Python

La lezione introduce l'uso di VENV per l'isolamento delle dipendenze in progetti Python, evidenziando la creazione, attivazione e disattivazione di ambienti virtuali. Gli studenti apprenderanno a gestire le dipendenze tramite il file requirements.txt e a seguire le best practices per garantire la riproducibilità del progetto. Un esercizio pratico permetterà di applicare le conoscenze acquisite, creando un ambiente virtuale e installando pacchetti.

Caricato da

fmonge
Copyright
© All Rights Reserved
Per noi i diritti sui contenuti sono una cosa seria. Se sospetti che questo contenuto sia tuo, rivendicalo qui.
Formati disponibili
Scarica in formato ODT, PDF, TXT o leggi online su Scribd

Introduzione pratica al VENV di Python

Titolo della Lezione:


• Introduzione all'isolamento delle dipendenze con VENV
Durata:
• 1 ora
Obbiettivo:
• Comprendere l'importanza dell'isolamento delle dipendenze in un progetto Python
• Saper creare, attivare e disattivare ambienti virtuali con VENV
• Saper utilizzare VENV per gestire diverse versioni e configurazioni di dipendenze
Dischemi di lezione:

1. Introduzione
• spiegane l'importanza dell'isolamento delle dipendenze in un progetto software
• discutete su come l'isolamento delle dipendenze aiuta a gestire i conflitti e le versioni delle
librerie

2. Cos'è un ambiente virtuale


-
• Definizione
• Differenza tra un ambiente virtuale e l'installazione globale di Python

3. VENV: Utilità per la creazione di ambienti virtuali


• Breve introduzione a VENV come strumento predefinito per python in versione 3.3+
• Distinction tra venv e virtualenv (per i progetti più vecchi)

4. Come installare VENV


• Se necessario, procedi con l'installazione di VENV sul computer o su Anaconda (se
distribuito da lì)
• pip install --user virtualenv (passando a VENV per progetti nuovi)

5. Crea e Attiva un ambiente virtuale


• python -m venv myenv (per creare un ambiente chiamato "myenv")
• source myenv/bin/activate (su Linux/Mac o myenv\Scripts\activate su
Windows per attivarlo)
• Controlla se l'ambiente virtuuae è attivo (prefisso "myenv" (nome dell'ambiente) nella
prompt del terminale)

6. Disattivare un ambiente virtuale


• deactivate (per disattivare l'istanza attiva)
7. Gestione delle dipendenze
• Installazione di pacchetti all'interno dell'ambiente virtuale:
• pip install nome_pacchetto
• Esempio con un pacchetto popolare: pip install requests
• Discussione su [Link] per il versionamento delle dipendenze
• Generazione di [Link]: pip freeze > [Link]
(all'interno dell'ambiente attivo)
• Installazione da [Link]: pip install -r
[Link]
• importanza del versionamento delle dipendenze per la riproducibilità del progetto

8. Sviluppo e Strumenti aggiuntivi


• Mostra come usare pip list per vedere i pacchetti installati
• Differenze con pip freeze e pip list --local per gestire dipendenze
dell'ambiente localmente
• Introduzione di conda per ambienti più elaborati (se c'è interesse o il contesto lo richiede)

9. Best Practices e consigli


• Scrivere una README o un PULL_REQUEST_TEMPLATE che includa istruzioni per
attivare l'ambiente e gestire dipendenze
• Effettuare stash di branche dedicate per sviluppare dentro l'ambiente virtuale prima di
committare
• Preferire l'uso di Docker perché un salto più avanti, ma non complicare troppo per ora

10. Esercizio Pratico


• Attivare un ambiente virtuale
• Installare un qualsiasi pacchetto python (es. requests, numpy, pandas, o qualsiasi altro
utile per la classe)
• Creare un semplice script Python nell'ambiente per testare l'installazione
• Disattivare l'ambiente e ripetere l'attivazione per verificare la portabilità

11. Dispense
Titolo: Come lavorare con VENV in Python

Introduzione

L'importanza dell'isolamento delle dipendenze


Per gestire correttamente un progetto Python, è generalmente utile lavorare in un ambiente isolato
dalle dipendenze globali del sistema. Questo approccio evita conflitti tra progetto e sistema di
produttività, garantisce la riproducibilità, e facilita il trasferimento del progetto su diverse
macchine.
**Cos'è un ambiente virtuale?
Un ambiente virtuale è un'istanza separata di Python che non modifica l'installazione principale di
Python, permettendo di avere versioni differenti delle librerie e configurazioni indipendenti tra
progetti.

VENV: Utilità per la creazione di ambienti virtuali


VENV (Virtual Environments) è lo strumento integrato in Python a partire dalla versione 3.3 per
creare ambienti virtuali. Assicura la creazione di un ambiente pulito, libero da dipendenze
preesistenti.

Come installare VENV


Se non è già installato:
bash
1
pip install --user virtualenv

Nota: VENV è automaticamente incluso in Python 3.3+ come venv.

**Creare e Attivare un ambiente virtuale


1. Creazione: python -m venv myenv
2. Attivazione (Linux/Mac): source myenv/bin/activate
• Sulla finestra del terminal appare il prefisso (myenv)
3. Disattivazione: deactivate

Gestione delle dipendenze con [Link]


Genera il file [Link] per documentare le dipendenze:

bash
1
pip freeze > [Link]

Installa dipendenze da [Link]:

bash
1
pip install -r [Link]
Utilità: Mantiene un rapporto tra codice e versioni delle librerie usate.

**Esercizio pratico
1. Crea un ambiente virtuale
2. Installa qualche libreria
bash

• 1
pip install requests

• Scrivi un semplice script per testare (es.)
python

3. 1
2
3
import requests
response = [Link]("[Link]
print(response[:100])
3.
3. Disattiva l'ambiente e prova a eseguire il script fuori dall'ambiente (problema: dipendenze
mancanti)
4. Riapri l'ambiente e prova a eseguire il codice.

Dispense

[1.] Cos'è un ambiente virtuale e perché usarlo?


• Risposta breve: Per separare le dipendenze del progetto dal sistema globale, per gestire
diverse versioni di librerie, e per una riproducibilità del progetto.

[2.] Come creare un ambiente virtuale


• Esegui python -m venv nome_ambiente
• Attiva con source nome_ambiente/bin/activate o nome_ambiente\
Scripts\activate su Windows
• Esempio: Crea e attiva un ambiente chiamato mio_env
[3.] Installare dipendenze in un ambiente virtuale
• All'interno dell'ambiente attivo, usa pip install ...
• Esempio: pip install requests numpy pandas

[4.] Documentare dipendenze con [Link]

• Genera: pip freeze > [Link]


• Installa: pip install -r [Link]
• Importanza: non commettere [Link] se contiene pip freeze (per i
binari, usa un file separato o .gitignore).

[5.] Best Practices


• Leggi: non installare librerie globali
• Usa pip install --user solo se necessario (evitare)
• Versionamento con [Link]: migliora la collaborazione e la riproducibilità
• Strumenti avanzati (opzionale): Conoscere Anaconda (vs VENV) o Docker per progetti
più grandi

[6.] Esercizio di Riassunto


Prova a:
1. Creare un ambiente
2. Installare requests
3. Eseguire un semplice script
4. Documenta le dipendenze con [Link]

Letture aggiuntive:
• Documentazione ufficiale di VENV
• Python Packaging Authority: The Hitchhiker's Guide to Python
• Python cheat sheet su ambienti virtuali: [Link]

Questa lezione fornisce una base operativa per lavorare con VENV, permettendo agli studenti di
metodica per isolare progetti Python e gestire le dipendenze efficacemente.

Nota per i facilitatori: Se il tempo lo permette, dimostrare/eseguire ogni passaggio con gli studenti,
o assegnare un esercizio pratico (inclusa la creazione dell'ambiente e l'installazione di un pacchetto
semplice, con il contestuale salvataggio di [Link]).

Spero che queste dispense e la lezione siano utili! 🤖💻


-Apertus

Potrebbero piacerti anche