redux_fichier2~20171217-170608.py 1.4 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546
  1. #!/usr/bin/env python
  2. # coding: utf8
  3. #pour installer nltk stopWords tout là : http://www.nltk.org/data.html
  4. import re
  5. from nltk.tokenize import sent_tokenize, word_tokenize
  6. from nltk.corpus import stopwords
  7. with open("mirabeau.txt", "r") as source:
  8. texte = source.read()
  9. #print("texte or", texte)
  10. #enlever les traits d'union et les apostrophes
  11. texte = texte.replace("'", " ")
  12. texte = texte.replace("-", " ")
  13. #print(texte)
  14. liste_phrase = texte.lower().split(" ")
  15. #print("liste des mots originaux séparés:", liste_phrase)
  16. liste_reduit = []
  17. #liste_phrase = str.lower(texte)
  18. stopWords = set(stopwords.words('french'))
  19. for w in liste_phrase:
  20. print("allword", w)
  21. if w not in stopWords:
  22. print("no stopword", w)
  23. liste_reduit.append(w)
  24. print("liste des mots réduite :", liste_reduit)
  25. #ré-introduire les majuscules en debut de vers
  26. for i in range( len ( liste_reduit ) ):
  27. mot_split = liste_reduit[i].split("\n")
  28. #print("mot_split", mot_split)
  29. if ( len(mot_split) == 2):
  30. mot_split[1] = mot_split[1].capitalize()
  31. liste_reduit[i] = mot_split[0] + "\n" + mot_split[1]
  32. if ( i > 0 and liste_reduit[i-1] == '' ):
  33. liste_reduit[i] = liste_reduit[i].capitalize()
  34. #if (elt.endswith("\n") and elt != " " ):
  35. #mot = elt.capitalize()
  36. poeme_reduit = " ".join(liste_reduit)
  37. print("version réduite du poeme :", poeme_reduit)
  38. with open("mirabeau_reduit.txt", "w") as destination :
  39. destination.write(" ".join(liste_reduit))