nome = raw_input('inserisci nome del file: ') fin = open(nome,'r') L = fin.readlines() def lettRipetute(parola): parola = parola.lower() for i in parola: if parola.count(i) > 1: return True return False def riempiDizionari1e2(L,d1,d2): i = 0 while i < len(L): for j in L[i].split(): if lettRipetute(j): d1[j] = d1.get(j, 0) + 1 else: d1[j]=0 p = j[0].lower() #laprimaletteralowercase d2[p] = d2.get(p,0)+1 i = i + 1 dic = {} dicRipetute = {} riempiDizionari1e2(L,dicRipetute,dic) #riempiti i due dizionari creo le tabelle #ma prima stampo i calcoli for i in dic.keys(): print 'Con la lettera "',i, '" ho', dic[i], 'parole' print 'Parole con lettere ripetute:', sum(dicRipetute.values()) #import MySQLdb #usare la libreria preferita #db = MySQLdb.connect("localhost","root","passw","nomeDB" ) import mysql.connector #usare la libreria preferita db = mysql.connector.connect(user="andrea", password="mysql") cursor = db.cursor() cursor.execute("create database if not exists parole") cursor.execute("use parole") st1= "( iniziale char(1) primary key,numero_parole integer )" st2= "( parola char(50), iniziale char(1), numero_doppie char(2), foreign key (iniziale) references per_iniziale (iniziale))" cursor.execute("create table per_iniziale"+st1) cursor.execute("create table lettere_ripetute"+st2) #inserisco i valori nelle tabelle # prendendoli dai due dizionari insert="insert into per_iniziale values(%s,%s)" for i in dic.keys(): data=(i[0],dic[i]) cursor.execute(insert,data)# db.commit() insert2="insert into lettere_ripetute values(%s,%s,%s)" for i in dicRipetute.keys(): if dicRipetute[i] != 0: data = (i, i[0].lower(), 'SI') else: data = (i, i[0].lower(), 'NO') cursor.execute(insert2,data) db.commit()