Maison > développement back-end > Tutoriel Python > Comment puis-je modifier des lignes dans des fichiers sur place à l'aide de Python ?

Comment puis-je modifier des lignes dans des fichiers sur place à l'aide de Python ?

Susan Sarandon
Libérer: 2024-12-04 21:48:15
original
602 Les gens l'ont consulté

How Can I Modify Lines in Files In-Place Using Python?

Modification des lignes dans les fichiers sur place

L'analyse des fichiers ligne par ligne offre une fonctionnalité précieuse pour manipuler le contenu. Cependant, s'il est nécessaire de modifier des lignes dans le fichier au fur et à mesure que vous les parcourez, vous vous demandez peut-être si cela est réalisable.

Édition en ligne

Traditionnellement, la modification de fichiers dans -placer n'a pas été une tâche simple. Cependant, une technique de simulation utilisant des fichiers de sauvegarde, similaire à l'approche adoptée par le module fileinput de Python, peut fournir une solution.

Exemple de script

Considérez cet exemple de script :

#!/usr/bin/env python
import fileinput

for line in fileinput.input(inplace=True, backup='.bak'):
    if some_condition(line):
        print line, # this goes to the current file
Copier après la connexion

Dans ce script, nous lisons à partir des fichiers fournis sur la ligne de commande ou stdin en utilisant fileinput.input. En précisant inplace=True, on active la modification du fichier courant. Le paramètre de sauvegarde crée un fichier de sauvegarde avec une extension .bak.

Opération

Au fur et à mesure que le script parcourt chaque ligne, il évalue une condition donnée (some_condition) sur chaque doubler. Si la condition est remplie, la ligne est réimprimée dans le fichier actuel, le modifiant ainsi sur place.

Exemple d'utilisation

Par exemple, exécuter le script avec :

$ python grep_some_condition.py first_file.txt second_file.txt
Copier après la connexion

entraînera first_file.txt et second_file.txt contenant uniquement les lignes qui satisfont à some_condition() prédicat.

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!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal