Capitolo 2 – Ambiente di sviluppo e struttura di un programma Python

Materiale originale a cura di Alfredo Di Fiore – megistone.it

Manuale completo:
vai all’indice del corso


2.1 Obiettivi formativi

Al termine di questo capitolo lo studente sarà in grado di:

  • comprendere come è organizzato un ambiente di sviluppo Python;
  • eseguire programmi Python da file e da riga di comando;
  • descrivere la struttura sintattica di un programma Python;
  • comprendere il ruolo dell’indentazione come costrutto semantico;
  • analizzare un semplice programma Python riga per riga.

2.2 Ambiente di sviluppo Python

Un ambiente di sviluppo è l’insieme di strumenti che permettono di scrivere,
eseguire e analizzare un programma.

Per Python è sufficiente disporre di:

  • un interprete Python;
  • un editor di testo o un IDE;
  • un terminale o prompt dei comandi.

Questa semplicità è una delle ragioni della diffusione di Python in ambito didattico e scientifico.

2.3 Interprete Python

L’interprete Python è il programma che:

  • legge il codice sorgente;
  • lo traduce in bytecode;
  • ne gestisce l’esecuzione tramite la Python Virtual Machine.

È possibile utilizzare Python in due modalità principali:

  • modalità interattiva;
  • modalità script.

2.3.1 Modalità interattiva

In modalità interattiva l’interprete esegue le istruzioni una alla volta,
mostrando immediatamente il risultato.

>>> 2 + 3
5
>>> print("Hello, Python")
Hello, Python

Questa modalità è utile per:

  • test rapidi;
  • verifica di espressioni;
  • apprendimento iniziale.

2.3.2 Modalità script

Nella modalità script il programma è scritto in un file con estensione .py
ed eseguito interamente dall’interprete.

python programma.py

Questa è la modalità utilizzata per lo sviluppo di applicazioni strutturate.

2.4 Editor e IDE

Un programma Python può essere scritto con un semplice editor di testo, ma in genere
si utilizzano ambienti più avanzati:

  • editor di codice (es. Visual Studio Code);
  • IDE completi (es. PyCharm).

Un IDE fornisce funzionalità come:

  • evidenziazione della sintassi;
  • controllo degli errori;
  • debugger;
  • gestione dei progetti.
🔍 Nota didattica

Dal punto di vista del linguaggio, non esiste alcuna differenza tra codice scritto
con un IDE o con un editor minimale: ciò che conta è il file .py.

2.5 Struttura di un programma Python

Un programma Python è costituito da una sequenza di istruzioni eseguite
dall’alto verso il basso.

Esempio di programma minimale:

print("Benvenuti in Python")
x = 10
y = 20
print(x + y)

Ogni istruzione occupa una riga (o più righe logiche) e viene eseguita in ordine.

2.6 Commenti

I commenti sono porzioni di testo ignorate dall’interprete, utilizzate
per documentare il codice.

# Questo è un commento
x = 5  # commento a fine riga

Un buon uso dei commenti migliora la leggibilità e la manutenibilità del programma.

2.7 L’indentazione come costrutto semantico

In Python l’indentazione non è solo una convenzione stilistica,
ma un elemento sintattico e semantico.

Blocchi di codice (come quelli associati a if, for, while, funzioni)
sono definiti dall’indentazione.

if x > 0:
    print("x è positivo")
    print("valore:", x)

Tutte le istruzioni indentate allo stesso livello appartengono allo stesso blocco.

⚠️ Errore concettuale comune

In Python non esistono parentesi graffe { } per delimitare i blocchi.
L’indentazione errata produce errori di sintassi o di logica.

2.8 Spazi e stile

La convenzione più diffusa prevede:

  • 4 spazi per ogni livello di indentazione;
  • niente tabulazioni mescolate agli spazi;
  • righe non eccessivamente lunghe.

Queste regole sono formalizzate nella guida stilistica PEP 8.

2.9 Analisi di un primo programma completo

# Programma di esempio
nome = input("Inserisci il tuo nome: ")
print("Ciao", nome)

Analisi:

  • la prima riga è un commento;
  • input() legge una stringa da tastiera;
  • il valore viene assegnato alla variabile nome;
  • print() produce l’output.

2.10 Riepilogo

  • Un ambiente di sviluppo comprende interprete, editor e strumenti di esecuzione.
  • Python può essere usato in modalità interattiva o script.
  • Un programma Python è eseguito dall’alto verso il basso.
  • L’indentazione definisce i blocchi di codice.
  • Lo stile del codice è parte integrante della sua qualità.

2.11 Domande tipiche d’esame

  1. Che differenza c’è tra modalità interattiva e modalità script?
  2. Perché l’indentazione è semanticamente rilevante in Python?
  3. Cos’è un ambiente di sviluppo?
  4. Qual è il ruolo dei commenti in un programma?

2.12 Esercizi

Esercizi di comprensione

  1. Spiega perché Python non utilizza parentesi graffe per delimitare i blocchi.
  2. Descrivi i componenti minimi di un ambiente di sviluppo Python.

Esercizi pratici

  1. Scrivi un programma che stampi tre righe di testo a tua scelta.
  2. Scrivi un programma che chieda un numero e lo stampi preceduto da un messaggio.