Un primo esempio semplice per approcciarsi alla struttura potentissima del dizionario in Python.
I dizionari sono strutture potentissime, presenti di default con il Python. Il loro comportamento è simile al dizionario che usiamo parola: definizione che la descrive. Nell’esempio qui sotto, riportiamo un dizionario che ha una parola e a fronte la sua traduzione. Nelle righe successive abbiamo una frase articolata che proviamo perciò a tradurre in modo un po’ grezzo e letterale.
#per i dizionari traduttore
dizionario = { "casa":"home", "cane":"dog", "oggi":"today", "bella":"nice", "è":"is", "una":"a", "giornata":"day"}
#print (dizionario["casa"])
frase = "oggi è una bella giornata"
parole = frase.split(" ")
for parola in parole:
print(dizionario[parola])
Lo stesso esercizio visto come insieme di funzione più programma main
def faiUnaTraduzione(frasedatradurre):
assert isinstance(frasedatradurre, str) #controlla il tipo che gli si passa, in questo caso una stringa di testo
parole = frasedatradurre.split(" ")
for parola in parole:
print(dizionario[parola])
if __name__=="__main__":
#per i dizionari traduttore
dizionario = { "casa":"home", "cane":"dog", "oggi":"today", "bella":"nice", "è":"is", "una":"a", "giornata":"day"}
frase = "oggi è una bella giornata"
faiUnaTraduzione(frase)
Altra versione con una funzione di ritorno
def faiUnaTraduzione(frasedatradurre):
assert isinstance(frasedatradurre, str) #controlla il tipo che gli si passa, in questo caso una lista
out = []
dizionario = { "casa":"home", "cane":"dog", "oggi":"today", "bella":"nice", "è":"is", "una":"a", "giornata":"day"}
parole = frasedatradurre.split(" ")
for parola in parole:
out.append(dizionario[parola])
return (' '.join(out)) #prendo la lista di parole e la concateno con uno spazio e la funzione join
if __name__=="__main__":
#per i dizionari traduttore
frase = "oggi è una bella giornata"
tradotto = faiUnaTraduzione(frase)
print (tradotto)
Ultima modifica 30 Gennaio 2022