🐍 PyTutos

Lire et écrire des fichiers

Charge et sauvegarde des données dans des fichiers texte avec open().

⏱ 12 minutes 📂 intermediaire #intermediaire #fichiers #io #with

Lire et écrire des fichiers

Tes programmes peuvent sauvegarder des données et les relire plus tard. Pour ça, on utilise des fichiers.

La fonction open()

Elle prend deux arguments importants : le chemin et le mode.

Mode Effet
"r" lecture (read) — fichier doit exister
"w" écriture, écrase tout
"a" ajout à la fin (append)
"x" crée, erreur si fichier existe

Toujours utiliser with 🙏

Avec with, le fichier est automatiquement fermé même en cas d'erreur :

with open("notes.txt", "w") as f:
    f.write("Bonjour Zazac !\n")
    f.write("On est le 17 mai.\n")
# Le fichier est fermé ici tout seul ✅

Lire un fichier entier

with open("notes.txt", "r") as f:
    contenu = f.read()
print(contenu)

Lire ligne par ligne

with open("notes.txt", "r") as f:
    for ligne in f:
        print(ligne.strip())   # strip() enlève le \n final

Lire toutes les lignes dans une liste

with open("notes.txt", "r") as f:
    lignes = f.readlines()
print(lignes)   # ['Bonjour Zazac !\n', 'On est le 17 mai.\n']

Ajouter à la fin (mode "a")

with open("notes.txt", "a") as f:
    f.write("Encore une ligne ajoutée.\n")

Mini-projet : journal de bord

from datetime import datetime

date = datetime.now().strftime("%d/%m/%Y %H:%M")
texte = input("Que veux-tu noter ? ")

with open("journal.txt", "a", encoding="utf-8") as f:
    f.write(f"[{date}] {texte}\n")

print("Noté !")

⚠ Encodages

Sur Windows, ajoute encoding="utf-8" pour gérer les accents :

with open("notes.txt", "w", encoding="utf-8") as f:
    f.write("Zazac et la fée Clochette ✨")

🧪 Quiz de validation

Réponds à toutes les questions. Il faut 70% de bonnes réponses pour valider le tuto !

🔒 Tu dois être connecté pour passer le quiz.