Programma Conta Parole | Python

Articolo approfondimento del di

Programma Conta Parole

Nota: Il programma è stato realizzato con la versione Python 3.3.2. Per farlo funzionare nella versione 2.7.6 è sufficiente togliere le parentesi quando si utilizza print.

Quando si scrive un articolo o un testo di qualsiasi genere, a volte può risultare utile contare i caratteri. Questa operazione può essere svolta in svariati modi, sia attraverso semplici applicazione presenti sul web e sia tramite il software che utilizziamo per scrivere.

Ma se invece volessimo creare un programma nostro per contare i caratteri? Tramite Python un programma del genere può essere realizzato in 2 semplice righe.

Conta Caratteri

La funzione "len", conta la lunghezza di una stringa data in input e la funzione print stampa questa lunghezza.

def contacaratteri(x):

#questa semplice funzione conta e stampa la lunghezza della stringa all'interno della variabile "x"

print ("Caratteri Totali: " + str(len(x)))

Conta Parole

Quando si scrive un testo però, potrebbe tornare utile conoscere il numero di parole di quest'ultimo. In questo caso è sufficiente effettuare una piccola modifica al programma aggiungendo una funzione che conti solo le parole.

def contaparole(x):

#creazione di una variabile con valore 0

parole=0

#analizza la stringa partendo dal primo carattere, quando trova uno spazio si blocca ed inserisce la porzione di stringa in una lista (vettore).

a=x.split(" ")

#la lista creata potrebbe anche contenere parole composte da un valore vuoto. Tramite il ciclo for si esegue una verifica e vengono contate solo i valori che contengano almeno un carattere che non sia lo spazio.

for i in a:

if (i!=""):

parole=parole+1

#viene stampato il numero totale di parole

print ("Parole Totali: " + str(parole))

Se si richiama la funzione in questo modo:

x = input("inserire testo: ")

contacaratteri(x)

contaparole(x)

Assegnando ad"x" il valore "Ciao mi chiamo Stefano")

Il programma ci restituirà il seguente risultato:

inserire testo: Ciao mi chiamo Stefano
Caratteri Totali: 22
Parole Totali: 4

Come potete vedere, il programma comincia ad assumere una certa forma e tramite ulteriori add-on e magari con l'inserimento di un interfaccia grafica, può trasformarsi in uno strumento utile.

Altre Funzioni

Si può anche creare una funzione che non prenda in considerazione le parole avente 1 o 2 lettere. Oppure si può aggiungere che ogni parola è retribuita un tot di centesimi e calcolare il valore totale dell'articolo in poche righe di codice:

def valore()

#si richiama la funzione che conta le parole e si assegna il numero di parole alla variabile "a"

a=contaparole(x)

#si assegna il valore a parola, ad esempio 4,50 € ogni 300 parole, corrisponde a 0,015 € a parola.

Valoreparola= 0,015

#si calcola il valore dell'articolo

valorearticolo=a*valoreparola

#si stampa il valore dell'articolo

print (valorearticolo)

Il risultato a video sarà il seguente:

inserire testo: Ciao mi chiamo Stefano

Caratteri Totali: 22
Parole Totali: 4
Parole Totali: 4
0.0536

Nota: Per omettere la doppia ripetizione di "Parole Totali: 4" sarebbe opportuno utilizzare "return" al posto del print.

Questo programmino, se ampliato, può ritornare veramente utile a chi lavora con i Web Editor, inoltre ho notato che è molto più preciso di alcune programmi online per il conteggio delle parole come Javascriptkit.com o freetiamo i quali considerano come parole anche il doppio spazio vuoto.

Immagini correlate


Link utili