Écrire des données aux fichiers
Pourboire
Pour plus d’informations, consultez l’onglet Texte et images !
L’écriture dans un fichier permet à votre programme d’enregistrer les résultats, de conserver les journaux ou de conserver les données entre les exécutions. Python offre deux modes principaux pour placer des données dans un fichier : écrire et ajouter.
Écriture dans un fichier avec "w"
L’ouverture d’un fichier en mode écriture ("w") crée un fichier ou remplace complètement tout fichier existant portant le même nom. Utilisez la méthode .write() pour ajouter du texte :
with open("greeting.txt", "w") as file:
file.write("Hello, world!\n")
file.write("Welcome to Python.\n")
Warning
Le mode d’écriture efface le fichier au moment où il est ouvert.
"w" Utilisez uniquement lorsque vous êtes sûr de vouloir remplacer le contenu du fichier.
Remarquez le \n à la fin de chaque chaîne. Contrairement à print(), .write() n’ajoute pas automatiquement de nouvelle ligne.
Ajout à un fichier avec "a"
L’ouverture d’un fichier en mode Ajout ("a") ajoute à la fin du fichier, en conservant tout ce qui est déjà là. Si le fichier n'existe pas encore, Python le crée.
with open("log.txt", "a") as file:
file.write("New entry added.\n")
Le mode Ajout est adapté aux fichiers journaux, aux notes et aux données que vous souhaitez créer au fil du temps.
Écriture de plusieurs lignes
Pour écrire une liste de chaînes à la fois, utilisez .writelines(). N’oubliez pas qu’il n’ajoute pas de lignes nouvelles : vous devez les inclure vous-même :
tasks = ["Buy groceries\n", "Walk the dog\n", "Finish homework\n"]
with open("tasks.txt", "w") as file:
file.writelines(tasks)
Choix entre l’écriture et l’ajout
Utilisez "w" quand... |
Utilisez "a" quand... |
|---|---|
| Vous souhaitez commencer à nouveau chaque fois | Vous souhaitez conserver le contenu existant |
| Vous enregistrez le résultat final d’un processus | Vous enregistrez de nouveaux événements ou entrées |
| Le remplacement est intentionnel | Préserver l’histoire est important |