#-*-coding: utf-8 -*- langues = {"en" : "anglais", "fr" : "français", "de" : "allemand", "po" : "portuguais", "ne" : "neerlandais", "ro" : "roumain", "sl" : "slovaque", "ca" : "catalan", "is" : "islandais", "dan" : "dannois", "es": "espagnol", "fi" : "finnois", "ho" : "hongrois", "it": "italien", "pl" : "polonais"} #definie les fichiers traites import re for langue in langues: print langue fichier = open (langue+".txt") #ouvre les fichiers .txt montexte = fichier.read() #lit le fichier .txt expr = re.compile("\W+", re.U) lesmots = expr.split(montexte) #parcelle le fichier comme demandé lesmots = list(set(lesmots)) lesmots.sort() testinglist = open("liste."+langue+".txt","w") for mot in lesmots: testinglist.write(mot+"\n") #print mot+"\n" testinglist.close() #langues = {"en" : "anglais", "fr" : "français", "de" : "allemand", "po" : "portuguais", "ne" : "neerlandais", "ro" : "roumain", "sl" : "slovaque", "ca" : "catalan", "is" : "islandais", "dan" : "dannois", "es": "espagnol", "fi" : "finnois", "ho" : "hongrois", "it": "italien", "pl" : "polonais"} #definie les fichiers traites dicomots = {} #cree une liste de mots result = [] for langue in["fr", "en", "de", "po", "ne", "ro", "sl", "ca", "is", "dan", "es", "fi", "ho", "it", "pl" ]: #print langue import re fichier = open ("liste."+langue+".txt", "r") #ouvre les fichiers .txt montexte = fichier.read() #lit le fichier .txt #print = montexte expr = re.compile("\W+", re.U) lesmots = expr.split(montexte) #parcelle le fichier #print lesmots dicomots[langue] = lesmots #cree une liste en fonction de la langue #print dicomots fichierinconnu = open("ho.txt", "r") #ouvre le fichier a comparer textinc = fichierinconnu.read() #lit ce meme fichier listinc = textinc.split() #parcelle ce meme fichier for langue in langues: #cree une boucle compteur = 0 #mise a zero du compteur for mot in listinc: if mot in dicomots[langue]:compteur = compteur+1 #si un mot dans le dicomots est trouve, ajoute 1 au compteur result = result +[(compteur, langue)] result.sort() print result print "Ce texte semble être en",langues[result[-1][1]]+".", "=)" for mot in lesmots: print "le mot " + mot + " apparaît " + str(lesmots.count(mot)) + " fois." #ici nous imprimons les mots presents dans le texte avec leur frequence.