Esercizio con Python: Contare le Parole in una Frase
Descrizione
Scrivi un programma che chieda all’utente di inserire una frase e restituisca il numero totale di parole, il numero di caratteri totali (escludendo gli spazi) e la parola più lunga.
Obiettivo
- Manipolare stringhe in Python.
- Usare metodi come
.split()
e funzioni comelen()
per analizzare testi. - Approfondire il concetto di iterazione e ricerca.
Codice
def analizza_frase():
print("Benvenuto nel programma di analisi delle frasi!")
# Chiedi all'utente di inserire una frase
frase = input("Inserisci una frase: ").strip()
# Conta le parole nella frase
parole = frase.split()
numero_parole = len(parole)
# Conta i caratteri totali, escludendo gli spazi
caratteri_totali = sum(len(parola) for parola in parole)
# Trova la parola più lunga
parola_piu_lunga = max(parole, key=len)
# Stampa i risultati
print(f"Numero totale di parole: {numero_parole}")
print(f"Numero totale di caratteri (senza spazi): {caratteri_totali}")
print(f"La parola più lunga è: '{parola_piu_lunga}' ({len(parola_piu_lunga)} caratteri)")
# Avvia il programma
analizza_frase()
Spiegazione
- Input dell’utente:
- L’utente inserisce una frase che viene pulita con
.strip()
per eliminare spazi inutili.
- L’utente inserisce una frase che viene pulita con
- Contare parole e caratteri:
- La frase viene divisa in una lista di parole con
.split()
. - Si calcolano il numero di parole e il totale dei caratteri iterando sulle parole.
- La frase viene divisa in una lista di parole con
- Trova la parola più lunga:
- Usa
max()
con il parametrokey=len
per trovare la parola più lunga nella lista.
- Usa
- Output:
- Il programma restituisce le statistiche: numero di parole, numero di caratteri (escludendo gli spazi) e la parola più lunga.
Esercizio Extra
- Modifica il programma per calcolare la frequenza di ciascuna parola nella frase.
- Mostra la lunghezza media delle parole inserite.