\center \huge Lire et écrire des fichiers
file = open("toto.txt", "r") # 'r' comme 'read'
contenu = file.read()
file.close()
Note: le fichier toto.txt
doit exister!
On peut écrire tout le contenu d’un coup:
contenu = "du texte à sauvegarder"
file = open("article.txt", "w") # 'w' comme 'write'
file.write(contenu)
file.close()
article.txt
sera écrasé s’il existe déjà.close()
file = open("article.txt", "w") # 'w' comme 'write'
# ... beacoup de code ici
# ... < une erreur
file.close()
S’il y a une erreur entre open()
et close()
, le fichier ne sera pas fermé!
with open("toto.txt", "w") as file:
file.write("du texte")
Quand on sort du bloc with
on a la garantie que file.close()
sera appelé,
même si on sort du bloc à cause d’une erreur.
Il n’y a maintenant plus aucune raison d’appeler .close()
“à la main”,
donc ne le faites pas ...
Très courant:
with open("toto.txt", "r") as file:
lignes = file.readlines()
# faire quelque chose avec la liste de lignes
with open("toto.txt", "w") as file:
file.writelines(lignes)
Pensez à fermer le premier fichier avant d’ouvrir le second. (ça marche même s’ils ont le même nom)