Maison >développement back-end >Tutoriel Python >Comment remplacer une ligne spécifique dans un fichier texte à l'aide de Python ?

Comment remplacer une ligne spécifique dans un fichier texte à l'aide de Python ?

DDD
DDDoriginal
2024-11-14 19:14:01747parcourir

How to Replace a Specific Line in a Text File Using Python?

Modification d'une ligne spécifique dans un fichier texte en Python

Dans ce scénario, vous disposez d'un fichier texte avec plusieurs lignes et vous souhaitez remplacer une ligne spécifique par une nouvelle valeur. Bien que le code Python fourni tente de modifier une ligne, il est incorrect. Voici une approche plus efficace :

# Open the file for reading
with open('stats.txt', 'r') as file:
    # Read the file into a list of lines
    data = file.readlines()

# Print the data to verify its current state
print(data)

# Get the specific line you want to modify
line_to_edit = 1  # Index starts from 0

# Replace the old line with the new value
data[line_to_edit] = 'Mage\n'  # Add a newline character at the end

# Open the file for writing and overwrite the contents
with open('stats.txt', 'w') as file:
    # Write the updated data back to the file
    file.writelines(data)

Cette approche utilise la fonction readlines() pour lire toutes les lignes d'une liste. Ensuite, vous pouvez accéder directement à la ligne souhaitée par son index (en rappelant que l'indexation commence à 0). Une fois la ligne spécifique modifiée, la liste entière est réécrite dans le fichier à l'aide de writelines().

Cette méthode est efficace car elle lit l'intégralité du fichier en mémoire, vous permettant de modifier et d'écraser librement des lignes spécifiques. Contrairement au code d'origine, il ne tente pas d'écraser directement des lignes individuelles, ce qui pourrait conduire à des résultats incorrects.

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:
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