Pour lire ou écrire dans un fichier, on utilise la fonction built-in open() combinée à un bloc with.
Syntaxe recommandée (with) :
with open(chemin, mode) as f:
# utiliser f ici
# le fichier est automatiquement fermé en sortant du bloc'r' read → lecture seule (par défaut). Erreur si fichier absent.
'w' write → écriture. ⚠ Écrase le fichier s'il existe !
'a' append → écriture à la suite (sans écraser).
'r+' read+writewith open('/tmp/data.txt', 'r') as f:
contenu = f.read() # tout le fichier en une strwith open('/tmp/data.txt', 'r') as f:
lignes = f.readlines() # liste de lignes (avec \n inclus)with open('/tmp/data.txt', 'r') as f:
for ligne in f: # lecture ligne par ligne (économe en mémoire)
print(ligne.strip()) # .strip() enlève le \n finalwith open('/tmp/data.txt', 'w') as f:
f.write('Alice\nBob\nCharlie\nDiana')f.write() N'ajoute pas de \n automatique. Tu dois le mettre toi-même.
Sans with, il faut penser à fermer le fichier avec f.close(), même en cas d'erreur. Le bloc with le fait pour toi automatiquement. C'est la seule bonne façon d'ouvrir un fichier en Python moderne.
splitlines() est utile pour compter les lignes : len(contenu.splitlines()).
Envie d'aller plus loin ? Découvrez nos formations certifiées Bac+2 à Bac+5 →