[Python] Contare parole
Daniele Zambelli
daniele.zambelli a gmail.com
Lun 27 Apr 2020 22:03:01 CEST
Il giorno lun 27 apr 2020 alle ore 17:27 Mara Leone
<maraleone95 a gmail.com> ha scritto:
>
> Salve!
> Ho questo programma per contare il numero di volte che ogni lettera compare nei dati (in questo caso un insieme di testi). Come potrei fare per ottenere lo stesso risultato ma contando le occorrenze di ogni parola? Il mio dubbio è che mentre con le lettere io posso creare il set inserendo manualmente le lettere dell'alfabeto, con le parole non posso farlo perché non conosco, ovviamente, tutte le parole contenute nel testo. Qui il programma per il conteggio delle lettere:
Per le lettere questo funziona:
def analizza(text, chars={}):
"""Restituisce l'analisi statistica del numero di caratteri di text.
>>> analizza('Sopra la panca la capra campa')
{'S': 1, 'o': 1, 'p': 4, 'r': 2, 'a': 9, ' ': 5, 'l': 2, 'n': 1, 'c': 3, 'm': 1}
"""
for c in text: # case sensitive
# for c in text.upper(): # case insensitive
chars[c] = chars.get(c, 0) + 1
return chars
In modo simile si fa con le parole spezzando il testo in con il metodo split.
Ciao
--
Daniele
www.fugamatematica.blogspot.com
giusto!
nel verso
forse è perché non guardiamo le cose
Quando non ci capiamo,
Maggiori informazioni sulla lista
Python