Maison >développement back-end >Tutoriel Python >Comment puis-je rechercher et remplacer efficacement du texte dans des fichiers à l'aide de Python ?
Rechercher et remplacer des lignes dans des fichiers avec Python
Supposons que nous ayons un fichier texte et que nous souhaitions modifier des lignes spécifiques en remplaçant un certain mot par un autre. Nous envisageons dans un premier temps de charger l'intégralité du fichier en mémoire pour le traiter et de le réécrire. Cependant, une approche plus efficace existe.
Utilisation du module fileinput
Le module fileinput offre une solution simple. En utilisant sa fonction input(), nous pouvons parcourir le fichier ligne par ligne tout en le modifiant sur place. Voici un exemple :
import fileinput for line in fileinput.input("test.txt", inplace=True): newline = line.replace('foo', 'bar') print(newline, end='')
Ce code remplace les occurrences de 'foo' par 'bar' dans le fichier, ligne par ligne. Comme fileinput écrit directement dans le fichier d'origine, aucun fichier intermédiaire n'est créé.
Approches alternatives
Pour les petits fichiers, une approche alternative implique :
Pour les fichiers plus volumineux, pensez à :
Cette approche nécessite un espace de stockage temporaire supplémentaire mais est efficace pour les fichiers volumineux.
Conclusion
En fonction de la taille du fichier et des exigences spécifiques, ces approches fournissent des méthodes efficaces pour rechercher et remplacer des lignes dans un fichier à l'aide de Python.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!