Opérations sur les fichiers


Préambule
Travailler sur des fichiers sous-entend d'être capable de spécifier le chemin d'accès à ce fichier. Ici, nous n'indiquerons pas de chemin, ce qui signifie que le fichier en question sera créé et enregistré dans le même dossier que le programme contenant le code.
Création d'un fichier
La fonction open() permet de créer et d'ouvrir un fichier. Il s'utilise de la façon suivante :
mon_fichier = open("document.txt" , "w")
mon_fichier est ici un objet représentant le fichier sur lequel on va travailler. Les deux arguments de la fonction open sont :
- "document.txt" : le nom du fichier créé
- "w" : le mode d'ouverture du fichier
- "r" : mode lecture seule (Read)
- "w" : mode écriture (Write). Le contenu du fichier est écrasé. Si le fichier n'existe pas, il est créé.
- "a" : mode ajout (Append). On écrit à la suite de ce que contient le fichier. Si le fichier n'existe pas, il est créé.
Ecriture dans un fichier
En mode "w" ou "a", on utilise la méthode write() :
mon_fichier.write("Chaîne de caractères à écrire dans le fichier n")
ATTENTION : La méthode write() accepte uniquement des chaînes de caractères (str).
Si l'on souhaite écrire le contenu d'une variable, il faudra la convertir en str : str(var).
Remarque : le code "n" permet d'aller à la ligne avant d'utiliser à nouveau la méthode write() ce qui est souvent très utile.
Lecture dans un fichier
On utilise la méthode read() :
contenu=mon_fichier.read()
ATTENTION : La méthode write() accepte uniquement des chaînes de caractères (str).
Si l'on souhaite écrire le contenu d'une variable, il faudra la convertir en str : str(var).
Remarque : le code "n" permet d'aller à la ligne avant d'utiliser à nouveau la méthode write() ce qui est souvent très utile.
Lecture dans un fichier
On utilise la méthode read() :
contenu=mon_fichier.read()
La variable contenu sera de type str et contiendra le contenu entier du fichier. On peut, par exemple, afficher ce contenu avec la fonction print.
Fermeture du fichier
Cette étape est indispensable pour enregistrer les modifications apportées au fichier. On utilise pour cela la méthode close() :
mon_fichier.close()
