Calculer occurrence mots

Fermé
preliator - 26 déc. 2019 à 15:50
 trifou - 26 déc. 2019 à 20:21
Bonjour,

Bonjour à tous,

Je cherche à créer un programme python qui, grâce à un fichier texte en lecture, me permettra de sortir un tableur excel contenant le nombre d’occurrence de chacun des mots. Ceci afin de faire sortir les mots les plus utilisés.

J'ai donc crée un début de script qui fait bien le travail. Cependant, je rencontre un problème d'encodage. Effectivement, le mot "Réalisation" va s'écrire "rÃalisation".
Pire encore, le programme que j'ai crée me découpe ce mot en 2 parties : "rÃ", "alisation".

J'ouvre mon fichier texte, je crée une liste "liste_mots" qui contient tous les mots sans ponctuation, je crée un dictionnaire contenant les mots et leur score d'apparition grâce au module Counter de Collections, et je crée un fichier excel contenant ces informations.

Code :

[CODE]
from collections import Counter
import csv
import re

liste_mots = []
dictionaire = {}

with open("texte.txt", "r", encoding='utf-8') as fichier:
for line in fichier:
line = line.strip()

liste_mots = re.findall("\w+",open("texte.txt").read()) #METTRE DANS UNE LISTE TOUS LES MOTS SANS PONCTUATION
dictionaire = (Counter(liste_mots).most_common())

with open("result.csv", "w", newline='', encoding='utf-8') as resultat:
fieldnames = ['Mot', 'Score']
w = csv.DictWriter(resultat, fieldnames=fieldnames, delimiter = ";")
w.writeheader() #POUR AFFICHER LES ENTETES
for i in dictionaire:
w.writerow({'Mot': i[0], 'Score': i[1]})
[/CODE]

Merci à vous.

1 réponse

Bonsoir,

Cela signifie que l'encodage de texte.txt n'est pas l'utf8.
0