Bonjour,
Et tout d'abord merci pour ta réponse.
Pour être plus précis, l'idée de ce script serait de remplacer dans un texte selon des parties précises (qui existent déjà) des mots.
Je connais les parties. Par exemple un paragraphe va commencer par "Partie 1" et chaque partie, commence par un titre (exemple : Partie 1, Partie 2, etc..)
Et ce que j'aimerais faire d'où l'idée des sous dictionnaire avec cette syntaxe :
remplacement={"Partie1" : {"fruit" : "poire, "légume" : "courgette"}}
Le problème que j'ai à partir d'ici, c'est comment modifier ses mots dans le nouveau fichier.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
|
import re
remplacement_dict = {"A":{'fruit':'pomme','frut':'poulpe'}, "B":{'fruit':'poire','pistache':'tomate'}}
print(remplacement_dict)
with open("a.txt") as fichier, open("b.txt", "w") as nouveaufichier:
texte = fichier.read()
def replfunc(match):
return remplacement_dict[match.group[0]]
regex = re.compile('|'.join(re.escape(x) for x in remplacement_dict))
with open('a.txt') as fin, open('b.txt', 'w') as fout:
for line in fin:
fout.write(regex.sub(replfunc,line)) |
Ce code fonctionne si la première ligne
remplacement_dict = {"A":{'fruit':'pomme','frut':'poulpe'}, "B":{'fruit':'poire','pistache':'tomate'}}
est remplacée par
remplacement_dict = {'fruit':'pomme','frut':'poulpe',fruit':'poire','pistache':'tomate'}
Mais je ne sais pas comment afficher ces modifications dans le deuxième fichier avec ce principe de sous dictionnaire associé à une clé.
Partager