Bonjour,
je cherche à créer une fonction qui me renvoie à partir d'un fichier texte, une liste des mots significatifs.
Voilà le code que j'ai créé jusqu'à présent :
J'ai cependant encore des problèmes sur les indices (surement du au fait qu'on supprime des caractères au fur et à mesure) car il ne semble pas fonctionner avec tous mes fichiers.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 def signif(adresse_texte): mon_fichier = open("adresse_texte", "r",encoding='utf-8') contenu = mon_fichier.read() liste=contenu.split(" ") mots=[] for i in range(0,len(liste)):#on supprime les mots de moins de 3 lettres if len(liste[i])>=3: mots.append(liste[i]) for i in range(0,len(mots)): for k in range(0,len(mots[i])):#on passe les majuscules en minuscules if ord(mots[i][k])>=65 and ord(mots[i][k])<=90: mots[i]=mots[i][0:k]+chr(ord(mots[i][k])+32)+mots[i][k+1:] for i in range(0,len(mots)):#on enlève les caractères autres que des lettres for k in range(0,len(mots[i])): if ord(mots[i][k])>122 or ord(mots[i][k])<97: mots[i]=mots[i][0:k]+" "+mots[i][k+1:] for i in range(0,len(mots)):#on enlève les mots peu significatifs if mots[i]=="est" or mots[i]=="ils" or mots[i]=="eux" or mots[i]=="une" or mots[i]=="les" or mots[i]=="des" or mots[i]=="non" or mots[i]=="que" or mots[i]=="qui": mots.remove(mots[i]) return(mots)
De plus je ne sais pas comment traiter les apostrophes, comme pour "c'est" qui revient assez souvent.
Si vous avez des idées d'amélioration, ça me serait d'une grande aide.
Merci d'avance
Partager