Ecrire et lire des fichiers en Python<span class="wtr-time-wrap after-title"><span class="wtr-time-number">5</span> min read</span>
lire et écrire des fichiers en python

Ecrire et lire des fichiers en Python5 min read

Dans ce tutoriel, vous allez apprendre à lire et écrire des fichiers en Python.

Un programme pour écrire dans un fichier :

f = open("fichier.txt", "w")
f.write("notre ligne de texte")
f.close()

Ces lignes vont générer un nouveau fichier (s’il n’existe pas) appelé “fichier.txt”. Ce dernier sera crée dans le même dossier que notre script. Il écrira ensuite “notre ligne de texte” dans le fichier.

Un programme pour lire un fichier :

f = open("fichier.txt", "r")
print(f.read())
f.close()

Ce programme va afficher dans la console le contenu du fichier “txt”. Dans notre cas il affichera “notre ligne de texte”. En Python, on peut manipuler deux types de fichiers, les binaires et les “text”. Dans ce tutoriel, nous allons travailler avec les fichiers “text”.

Ecrire et lire des fichiers en python

Essayons maintenant de comprendre les programmes édités plus haut.

la fonction open() permet de créer un objet représentant le fichier. La variable f contient l’objet qui est retourné par la fonction open. Bien sûr, on peut nommer la variable comme on le désire. A partir de cette objet, on peut utiliser différentes méthodes pour manipuler le fichier.

open() prend deux arguments, le premier correspond au nom du fichier, et le second au mode d’accès (cet argument est optionnel).

Le mode d’accès est un attribut de l’objet permettant d’indiquer dans quel mode d’ouverture le fichier est lancé, il y en existe 4 types :

  • r : ce qui signifie read (lire). Ce mode permet de lire les informations du fichier ;
  • w : qui veut dire write (écrire). Si l’on ouvre le fichier en mode w, on peut uniquement écrire dans le fichier, il est impossible de le lire. Si le fichier n’existe pas encore, il sera crée. S’il existe, il sera juste modifié
  • a : il correspond à appending (ajouter). Ce mode permet d’ajouter du nouveau contenu sans supprimer l’ancien du fichier. Concrètement il permet d’écrire une nouvelle ligne ;
  • r+ : cela indique que l’on peut lire et écrire le fichier. Il s’agit de la combinaison de r et w.

Si l’on indique pas de mode d’ouverture, c’est le mode r qui sera appliqué par défaut.

Voyons maintenant la prochaine ligne de notre programme :

f.write("notre ligne de texte")

write() est une méthode permettant d’écrire dans un fichier “text”. On doit écrire une chaîne de caractère à l’intérieur des parenthèse, c’est ce qui apparaîtra dans le fichier.

f.read()

read() est une méthode qui va simplement retourner le texte contenu dans le fichier sous forme d’une chaîne de caractère. Dans notre exemple , on affiche cette chaîne avec print().

f.close()

close() est une méthode qui permet de fermer le fichier. Une fois appelé, on ne peut plus effectuer d’opération sur le fichier. Il est très important d’appeler cette méthode une fois toutes les autres opérations effectuées afin d’éviter les potentiels bugs.

Les autres fonctionnalités interessantes

Il existe bien d’autres méthodes intéressantes comme :

read(int) : si on donne un nombre à la fonction read(), cette méthode va retourner le nombre de caractères que vous avez indiqués.

Voici un exemple :

Nous avons un fichier appelé “notrefichier.txt” et il contient la phrase “le blog du codeur” à l’intérieur.

f = open("notrefichier.txt", "r")
print f.read(7)
f.close()

Ce script va renvoyer la chaîne de caractère suivante : “le blog”

Vous voyez que le fichier lit aussi les espaces, il est donc important de les prendre en compte.

readline() Cette fonction permet de lire une seule ligne de code (le programme ajoute “\n” à la fin pour signifier la fin de la ligne)

Prenons un fichier qui contient ces lignes :

ligne 1

ligne 2

ligne 3

f = open('monfichier.txt', "r")
print f.readline()
f.close()

Ce programme va afficher la première ligne du fichier c’est à dire : ligne 1

Cette méthode est cumulative, c’est à dire que lorsque l’on appelle deux fois, elle lira la ligne 1 et ensuite la ligne 2

readlines() : Cette fonction lis toutes les lignes du fichier et les renvoi sous forme d’un array.

seek(int) : Cette méthode déplace le pointeur du fichier à une certaine position, le pointeur signifie la ligne sélectionnée par python :

  • 0 : met le pointeur au début du fichier
  • 1 : met le pointeur à la ligne actuelle
  • 2 : met le pointeur à la fin du fichier

En conclusion

Vous pouvez voir qu’il est facile de lire et d’écrire des fichiers textes en Python. C’est très utile lorsque l’on veut enregistrer et lire des informations ou des configurations.

Si cet article vous as plu, vous pouvez vous abonner à ma newsletter pour recevoir le guide GRATUIT Ultime pour bien débuter la programmation

Vous abonner à notre newsletter

* champ requis

Je vous remercie d’avoir lu cet article, au plaisir de vous revoir sur mon blog !

Laisser un commentaire

Fermer le menu
×
×

Panier