collections.Counter: Conta Tutto in Python Senza Stress
collections.Counter: Conta Tutto in Python Senza Stress
Quando usarlo
Devi contare elementi in una lista, analizzare frequenze di parole in un testo, o trovare gli elementi più comuni? Counter è il tuo miglior amico. È perfetto per analisi statistiche, elaborazione di dati e ogni situazione dove serve sapere “quante volte appare X”.
Snippet
1
2
3
4
5
6
7
8
9
10
11
12
13
from collections import Counter
# Contare elementi in una lista
voti = ['A', 'B', 'A', 'C', 'A', 'B', 'A']
conteggio = Counter(voti)
print(conteggio) # Counter({'A': 4, 'B': 2, 'C': 1})
# I 2 elementi più comuni
print(conteggio.most_common(2)) # [('A', 4), ('B', 2)]
# Contare caratteri in una stringa
testo = "python"
Counter(testo) # Counter({'p': 1, 'y': 1, 't': 1, 'h': 1, 'o': 1, 'n': 1})
Perché funziona
Counter è una sottoclasse di dict specializzata per conteggi. Gestisce automaticamente valori mancanti (li inizializza a 0), supporta operazioni matematiche tra contatori, e offre metodi utili come most_common(). È molto più veloce e leggibile rispetto a loop manuali con dizionari normali.
Attenzione a…
- Non confondere
Counter()vuoto conCounter({})- sono diversi - I valori possono essere negativi, ma
most_common()li ordina comunque Counternon preserva l’ordine di inserimento come i dict normali (prima di Python 3.7)
Vedi anche
collections.defaultdictper dizionari con valori predefinitistatisticsmodule per calcoli statistici avanzati- Documentazione Counter
This post is licensed under CC BY 4.0 by the author.