Il calcolo della media di una lista di numeri è un’operazione fondamentale in diversi ambiti della programmazione, come l’analisi dei dati, la statistica e il machine learning.
In Python esistono diversi metodi per calcolare la media di una lista, ognuno con vantaggi specifici a seconda del contesto d’uso.
In questa guida vedremo come calcolare la media aritmetica e ponderata in Python, usando sia funzioni built-in che librerie specializzate come statistics e NumPy.
Cos’è la Media di una Lista in Python?
La media aritmetica di un insieme di numeri si calcola sommando tutti i valori e dividendo il risultato per il numero di elementi. La formula matematica è:

dove:
- Xi sono gli elementi della lista,
- n è il numero totale di elementi.
Python offre diversi strumenti per eseguire questo calcolo in modo semplice ed efficiente.
Come Calcolare la Media in Python?
1. Usare sum() e len() (Metodo Built-in)
Il metodo più semplice per calcolare la media è usare le funzioni built-in sum() e len() per sommare gli elementi della lista e dividerli per il numero totale di valori.
Esempio di codice
numeri = [10, 20, 30, 40, 50]
media = sum(numeri) / len(numeri)
print(“Media:”, media)
✅ Vantaggi:
- Facile da comprendere e implementare.
- Non richiede librerie esterne.
⚠️ Svantaggi:
- Poco efficiente per dataset di grandi dimensioni.
2. Usare statistics.mean()
Python offre il modulo statistics, che include la funzione mean() per calcolare la media in modo più leggibile.
Esempio di codice
import statistics
numeri = [10, 20, 30, 40, 50]
media = statistics.mean(numeri)
print(“Media:”, media)
✅ Vantaggi:
- Più leggibile e ottimizzato rispetto al metodo
sum()/len().
⚠️ Svantaggi:
- Necessita dell’importazione della libreria
statistics.
3. Usare NumPy per Calcolare la Media
Se si lavora con dataset di grandi dimensioni, la libreria NumPy è una scelta più efficiente, poiché ottimizza i calcoli.
Esempio di codice
import numpy as np
numeri = np.array([10, 20, 30, 40, 50])
media = np.mean(numeri)
print(“Media:”, media)
✅ Vantaggi:
- Estremamente veloce e ottimizzato per grandi dataset.
- Utilizzabile in applicazioni di Data Science e Machine Learning.
⚠️ Svantaggi:
- Richiede l’installazione della libreria NumPy (
pip install numpy).
Media Ponderata in Python
La media ponderata tiene conto di un peso specifico per ogni valore della lista. La formula è:

dove:
- Xi sono o valori,
- Wi sono i pesi associati a ciascun valore.
Esempio di codice
valori = [10, 20, 30]
pesi = [1, 2, 3]
media_ponderata = sum(v * p for v, p in zip(valori, pesi)) / sum(pesi)
print(“Media Ponderata:”, media_ponderata)
✅ Vantaggi:
- Utile quando alcuni valori devono avere più peso nel calcolo della media.
⚠️ Svantaggi:
- Richiede una comprensione più avanzata della statistica.
Errori Comuni e Come Evitarli
Ecco alcuni errori comuni che possono verificarsi durante il calcolo della media in Python:
🔴 Divisione per zero (ZeroDivisionError)
lista_vuota = []
media = sum(lista_vuota) / len(lista_vuota) # Errore!
✅ Soluzione:
Prima di calcolare la media, verifica che la lista non sia vuota:
if len(lista_vuota) > 0:
media = sum(lista_vuota) / len(lista_vuota)
else:
print(“Lista vuota, impossibile calcolare la media.”)
🔴 Dati non numerici in una lista
lista_mista = [10, “venti”, 30]
media = sum(lista_mista) / len(lista_mista) # Errore!
✅ Soluzione:
Assicurati che tutti gli elementi della lista siano numerici:
if all(isinstance(i, (int, float)) for i in lista_mista):
media = sum(lista_mista) / len(lista_mista)
else:
print(“Errore: la lista contiene elementi non numerici.”)
Applicazioni Pratiche del Calcolo della Media
- Analisi dei dati: per analizzare statistiche su vendite, temperature, prestazioni di studenti.
- Machine learning: per la normalizzazione dei dati.
- Finanza: per calcolare il rendimento medio degli investimenti.
Scopri il Corso Base di Python di Scuola Moscati
Abbiamo visto diversi modi per calcolare la media di una lista in Python, dai metodi più semplici con sum() e len() fino a soluzioni più avanzate con NumPy.
La scelta del metodo dipende dal contesto di utilizzo: per semplici operazioni va bene il metodo built-in, mentre per dataset complessi è meglio utilizzare NumPy.
Vuoi imparare di più su Python e migliorare le tue competenze nella programmazione?
Se vuoi imparare questo linguaggio in modo strutturato, il Corso Base di Python per Principianti di Scuola Moscati è la scelta ideale. Il corso copre le basi della programmazione, i concetti fondamentali e le applicazioni pratiche per affrontare qualsiasi progetto.

