Maison >développement back-end >Tutoriel Python >Comment supprimer des lignes spécifiques d'un fichier texte en Python ?
Suppression de lignes spécifiques d'un fichier texte en Python
Lorsque vous travaillez avec des fichiers texte, des tâches telles que la suppression de lignes spécifiques peuvent survenir. En Python, il est possible de supprimer une ligne particulière d'un fichier texte en utilisant une technique simple. Passons à une solution étape par étape.
Étape 1 : Lire le fichier et obtenir ses lignes
Commencez par ouvrir le fichier texte à l'aide du "r" mode (mode lecture). Lisez chaque ligne dans une liste appelée « lignes » en utilisant la méthode « readlines() ». Cela vous donne accès à toutes les lignes du fichier.
with open("yourfile.txt", "r") as f: lines = f.readlines()
Étape 2 : Rouvrez le fichier pour l'écriture
Ensuite, rouvrez le même fichier texte dans " mode w" (mode écriture). Cela vous permet d'apporter des modifications au contenu du fichier.
with open("yourfile.txt", "w") as f:
Étape 3 : Réécrire les lignes de manière itérative
Maintenant, parcourez chaque ligne dans les "lignes" liste. Comparez chaque ligne avec le pseudo que vous souhaitez supprimer en utilisant la méthode "strip('n')". Cela supprime tous les caractères de nouvelle ligne pour garantir une comparaison précise.
for line in lines: if line.strip("\n") != "nickname_to_delete": f.write(line)
Étape 4 : Enregistrez les modifications
En excluant la ligne que vous souhaitez supprimer de l'opération d'écriture , vous le supprimez effectivement du fichier. Fermez le fichier pour enregistrer les modifications.
# Implicitly closes the file
Remarque supplémentaire :
N'oubliez pas que si votre fichier ne se termine pas par un caractère de nouvelle ligne, il est crucial de supprimer le caractère de nouvelle ligne de votre comparaison. Cela garantit que la dernière ligne est correctement traitée et supprimée.
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!