J'ai écrit un code en Python qui parcourt le fichier, extrait tous les nombres, les additionne. Je dois maintenant écrire le «total» (un nombre entier) à un endroit particulier dans le fichier qui indique something something something...Total: __00__ something something
.Comment écrire à une position particulière dans un fichier texte sans effacer le contenu original?
Je dois écrire le total que j'ai calculé exactement après la partie Total: __
, ce qui signifierait que la ligne résultante passerait à, par exemple: something something something...Total: __35__ something something
.
Jusqu'à présent, j'ai ce pour la partie écriture:
import re
f1 = open("filename.txt", 'r+')
for line in f1:
if '__' in line and 'Total:' in line:
location = re.search(r'__', line)
print(location)
Ceci affiche: <_sre.SRE_Match object; span=(21, 23), match='__'>
Il trouve la « __ » à la position 21 à 23, ce qui signifie que je veux insérer la total à la position 24. Je sais que je dois en quelque sorte utiliser la méthode seek()
pour ce faire. Mais j'ai essayé et échoué plusieurs fois. Toute suggestion serait appréciée.
Important: Le contenu d'origine du fichier doit être conservé tel quel. Seuls les changements totaux - rien d'autre.