Fichiers
Un fichier est un ensemble de données dans la mémoire externe qui porte un nom.
Il existe deux types de fichiers en Python :
-
texte, qui contient du texte interrompu sur une ligne ; Parmi les caractères spéciaux dans les fichiers texte, il ne peut y avoir que des caractères de retour à la ligne ("
\n
") et un retour au début de la ligne ("
\r
" ;);
-
binary, qui stocke toutes les données binaires sans restriction (par exemple, des images, des sons, des vidéos, etc.).
Ensuite, nous envisagerons de travailler avec des fichiers texte.
Le principe de travailler avec un fichier du programme
Se compose de trois étapes :
1. ouvrir un dossier ;
2. travailler avec le fichier ;
3. fermer le fichier.
Ce principe de fonctionnement est appelé le
"principe du sandwich"..
A l'ouverture d'un fichier, le mode de fonctionnement est indiqué : lecture, écriture ou ajout de données à la fin du fichier. Le fichier ouvert est bloqué et les autres programmes ne peuvent pas y accéder. Après avoir travaillé avec le fichier, vous devez le fermer pour rompre la connexion avec le programme. Lorsqu'un fichier est fermé, toutes les modifications apportées par le programme dans ce fichier sont écrites sur le disque. Python fonctionne avec les fichiers via des variables de fichier.
La fonction
open()
permet
d'ouvrir un fichier et renvoie une variable de fichier qui peut être utilisée pour accéder au fichier.
f = open(file_name, access_mode)
,
où :
-
file_name
- nom du fichier à ouvrir
-
access_mode
- mode d'ouverture du fichier. Il peut s'agir de : lecture, écriture, etc. Le mode par défaut est lecture (r) sauf indication contraire.
Liste complète des modes d'ouverture de fichiers
Mode |
Description |
r |
Lecture seule. |
w |
Inscriptible uniquement. Créera un nouveau fichier s'il n'est pas trouvé avec le nom spécifié. |
rb |
Lecture seule (binaire). |
wb |
Écriture seule (binaire). Créera un nouveau fichier s'il n'est pas trouvé avec le nom spécifié. |
r+ |
Pour lire et écrire. |
rb+ |
Pour lire et écrire (binaire). |
w+ |
Pour lire et écrire. Créera un nouveau fichier accessible en écriture s'il n'est pas trouvé avec le nom spécifié. |
wb+ |
Pour la lecture et l'écriture (binaire). Créera un nouveau fichier accessible en écriture s'il n'est pas trouvé avec le nom spécifié. |
a |
S'ouvre pour ajouter du nouveau contenu. Créera un nouveau fichier accessible en écriture s'il n'est pas trouvé avec le nom spécifié. |
a+ |
S'ouvre pour ajouter du nouveau contenu. Créera un nouveau fichier pour lire l'entrée si elle n'est pas trouvée avec le nom spécifié. |
ab |
Ouvre pour ajouter un nouveau contenu (binaire). Créera un nouveau fichier accessible en écriture s'il n'est pas trouvé avec le nom spécifié. |
ab+ |
Ouvre pour ajouter un nouveau contenu (binaire). Créera un nouveau fichier pour lire l'entrée si elle n'est pas trouvée avec le nom spécifié. |
La méthode
close()
permet de
fermer un fichier.
Exemple
Fin = open("input.txt")
Fout = open("sortie.txt")
# faire quelque chose avec les fichiers
fout.close()
Fin.close()
Si un fichier existant est ouvert en écriture, son contenu est détruit. Après la fin du programme, tous les fichiers ouverts sont fermés automatiquement.