Merci à Ramtin Alami qui nous offre ce très simple programme pour créer des citations à partir d'un texte. Ne ratez pas son superbe article (en anglais) pour tout comprendre de sa méthode:
How I generated inspirational quotes with less than 20 lines of python code
#http://www.ramtin.xyz/post/4
#Training Section
dataset_file = open('C:/Users/blabla/Documents/datasetFile.txt')
model = {}
for line in dataset_file: #dataset_file is a txt file with training quotes
line = line.lower().split()
for i, word in enumerate(line):
if i == len(line)-1:
model['END'] = model.get('END', []) + [word]
else:
if i == 0:
model['START'] = model.get('START', []) + [word]
model[word] = model.get(word, []) + [line[i+1]]
#Generator Section
import random
generated = []
while True:
if not generated:
words = model['START']
elif generated[-1] in model['END']:
break
else:
words = model[generated[-1]]
generated.append(random.choice(words))
print(generated)
Le détail du programme est disponible sur son site http://www.ramtin.xyz/post/4. J'ai juste ajouté les éléments manquants comme la déclartion du "model".
Pensez si à modifier les antislash de windows en slash normaux quand vous collerez le chemin vers le fichier "dataset_file".