redux_fichier2~20171217-165945.py 1.3 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  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)
  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. if w not in stopWords:
  21. liste_reduit.append(w)
  22. print("liste des mots réduite :", liste_reduit)
  23. #ré-introduire les majuscules en debut de vers
  24. for i in range( len ( liste_reduit ) ):
  25. mot_split = liste_reduit[i].split("\n")
  26. #print("mot_split", mot_split)
  27. if ( len(mot_split) == 2):
  28. mot_split[1] = mot_split[1].capitalize()
  29. liste_reduit[i] = mot_split[0] + "\n" + mot_split[1]
  30. if ( i > 0 and liste_reduit[i-1] == '' ):
  31. liste_reduit[i] = liste_reduit[i].capitalize()
  32. #if (elt.endswith("\n") and elt != " " ):
  33. #mot = elt.capitalize()
  34. poeme_reduit = " ".join(liste_reduit)
  35. print("version réduite du poeme :", poeme_reduit)
  36. with open("mirabeau_reduit.txt", "w") as destination :
  37. destination.write(" ".join(liste_reduit))