Maîtriser la gestion de fichiers Python : créer, lire, écrire et ouvrir des fichiers texte facilement
Maîtriser la gestion de fichiers Python : créer, lire, écrire et ouvrir des fichiers texte facilement
Gestion de fichiers en Python
En Python, il n'est pas nécessaire d'importer de bibliothèque externe pour lire et écrire des fichiers. Python fournit une fonction intégrée pour créer, écrire et lire des fichiers.
Dans ce tutoriel sur la gestion de fichiers en Python, nous apprendrons :
- Comment ouvrir un fichier texte en Python
- Comment créer un fichier texte en Python
- Comment ajouter du texte à un fichier en Python
- Comment lire des fichiers en Python
- Comment lire un fichier ligne par ligne en Python
- Modes de fichier en Python
Comment ouvrir un fichier texte en Python
Pour ouvrir un fichier, vous devez utiliser la fonction intégrée open. La fonction Python open renvoie un objet fichier qui contient des méthodes et attributs pour effectuer diverses opérations sur les fichiers.
Syntaxe de la fonction Python open :
objet_fichier = open("nom_fichier", "mode")
Ici,
- nom_fichier : donne le nom du fichier que l'objet fichier a ouvert.
- mode : attribut d'un objet fichier indiquant dans quel mode le fichier a été ouvert.
Plus de détails sur ces modes sont expliqués ci-dessous.
Comment créer un fichier texte en Python
Avec l'écriture dans un fichier Python, vous pouvez créer un fichier .txt (guru99.txt) en utilisant le code démontré ici :
Étape 1) Ouvrir le fichier .txt
f = open("guru99.txt", "w+")
- Nous avons déclaré la variable "f" pour ouvrir un fichier nommé guru99.txt. Open prend 2 arguments : le fichier à ouvrir et une chaîne représentant le type de permission ou d'opération souhaitée sur le fichier.
- Ici, nous avons utilisé "w" dans notre argument, ce qui indique l'écriture dans un fichier Python et créera le fichier s'il n'existe pas.
- Le signe plus indique à la fois lecture et écriture pour l'opération de création de fichier Python.
Étape 2) Entrer des données dans le fichier
for i in range(10):
f.write("Ceci est la ligne %d\r\n" % (i+1))
- Nous avons une boucle for qui s'exécute sur une plage de 10 nombres.
- Utilisation de la fonction write pour entrer des données dans le fichier.
- La sortie que nous voulons itérer dans le fichier est "c'est le numéro de ligne", que nous déclarons avec la fonction write de fichier Python et puis %d (affiche un entier).
- En gros, nous mettons le numéro de ligne que nous écrivons, puis un retour chariot et un caractère de nouvelle ligne.
Étape 3) Fermer l'instance du fichier
f.close()
- Ceci fermera l'instance du fichier guru99.txt stockée.
Voici le résultat après l'exécution du code pour l'exemple de création de fichier texte en Python :

Quand vous cliquez sur votre fichier texte dans notre cas "guru99.txt", il ressemblera à ceci :

Comment ajouter du texte à un fichier en Python
Vous pouvez aussi ajouter/rajouter un nouveau texte à un fichier déjà existant ou un nouveau fichier.
Étape 1)
f = open("guru99.txt", "a+")
Encore une fois, si vous voyez un signe plus dans le code, cela indique qu'il créera un nouveau fichier s'il n'existe pas. Mais dans notre cas, nous avons déjà le fichier, donc nous n'avons pas besoin de créer un nouveau fichier pour l'opération d'ajout Python.
Étape 2)
for i in range(2):
f.write("Ligne ajoutée %d\r\n" % (i+1))
Ceci écrira des données dans le fichier en mode ajout.

Vous pouvez voir le résultat dans le fichier "guru99.txt". La sortie du code est que le fichier précédent est ajouté avec de nouvelles données par l'opération d'ajout Python.

Comment lire des fichiers en Python
Vous pouvez lire un fichier en Python en appelant le fichier .txt en "mode lecture" (r).
Étape 1) Ouvrir le fichier en mode lecture
f = open("guru99.txt", "r")
Étape 2) Nous utilisons la fonction mode dans le code pour vérifier que le fichier est en mode ouvert. Si oui, nous procédons.
if f.mode == 'r':
Étape 3) Utiliser f.read pour lire les données du fichier et les stocker dans la variable contenu pour la lecture de fichiers en Python
contenu = f.read()
Étape 4) Afficher le contenu pour la lecture de fichier texte Python
Voici la sortie de l'exemple de lecture de fichier Python :

Comment lire un fichier ligne par ligne en Python
Vous pouvez aussi lire votre fichier .txt ligne par ligne si vos données sont trop grosses pour être lues d'un coup. Le code readlines() ségrègera vos données en mode facile à lire.

Quand vous exécutez le code (f1 = f.readlines()) pour lire le fichier ligne par ligne en Python, il séparera chaque ligne et présentera le fichier dans un format lisible. Dans notre cas, la ligne est courte et lisible, la sortie ressemblera au mode lecture. Mais s'il y a un fichier de données complexe qui n'est pas lisible, ce bout de code pourrait être utile.
Modes de fichier en Python
Voici les divers Modes de fichier en Python :
| Mode | Description |
|---|---|
| 'r' | Mode par défaut. Ouvre le fichier pour lecture. |
| 'w' | Ouvre le fichier pour écriture. Si le fichier n'existe pas, en crée un nouveau. S'il existe, le tronque. |
| 'x' | Crée un nouveau fichier. Si le fichier existe déjà, l'opération échoue. |
| 'a' | Ouvre le fichier en mode ajout. Si le fichier n'existe pas, en crée un nouveau. |
| 't' | Mode par défaut. Ouvre en mode texte. |
| 'b' | Ouvre en mode binaire. |
| '+' | Ouvre un fichier pour lecture et écriture (mise à jour). |
Code complet pour l'exemple Python print() vers fichier
Exemple Python 2
def main():
f = open("guru99.txt", "w+")
# f = open("guru99.txt", "a+")
for i in range(10):
f.write("This is line %d\r\n" % (i+1))
f.close()
# Ouvrir le fichier à nouveau et lire le contenu
# f = open("guru99.txt", "r")
# if f.mode == 'r':
# contents = f.read()
# print contents
# ou, readlines lit les lignes individuelles dans une liste
# fl = f.readlines()
# for x in fl:
# print x
if __name__ == "__main__":
main()
Exemple Python 3
def main():
f = open("guru99.txt", "w+")
# f = open("guru99.txt", "a+")
for i in range(10):
f.write("This is line %d\r\n" % (i+1))
f.close()
# Ouvrir le fichier à nouveau et lire le contenu
# f = open("guru99.txt", "r")
# if f.mode == 'r':
# contents = f.read()
# print(contents)
# ou, readlines lit les lignes individuelles dans une liste
# fl = f.readlines()
# for x in fl:
# print(x)
if __name__ == "__main__":
main()
Résumé
- Python vous permet de lire, écrire et supprimer des fichiers.
- Utilisez la fonction open("nom_fichier", "w+") pour créer un fichier texte Python. Le + dit à l'interpréteur Python d'ouvrir le fichier texte avec permissions lecture et écriture.
- Pour ajouter des données à un fichier existant ou l'opération Python print vers fichier, utilisez la commande open("NomFichier", "a")
- Utilisez la fonction Python read from file pour lire le CONTENU ENTIER d'un fichier.
- Utilisez la fonction readlines pour lire le contenu du fichier ligne par ligne.
Python
- Gestion des fichiers en C : Maîtriser les E/S avec fopen, fprintf, fread et fseek
- Entrées/sorties de fichiers Python : maîtriser les opérations sur les fichiers
- Initialiser la RAM bloc FPGA depuis des fichiers texte avec la bibliothèque TEXTIO de VHDL
- Lecture de Fichiers en Java avec BufferedReader – Guide Pratique avec Exemples
- Fonction Python print() : Guide pratique avec exemples
- Vérifier l'existence de fichiers et répertoires en Python – Guide pratique
- Python JSON : encodage, décodage et gestion de fichiers – Guide pratique
- Calculer des Moyennes en Python : Guide Pratique
- Entrées/Sorties de fichiers en Python : Maîtriser les opérations de lecture et d'écriture