Lire des données à partir de fichiers
Pourboire
Pour plus d’informations, consultez l’onglet Texte et images !
Python vous donne plusieurs façons de lire du texte à partir d’un fichier. Le meilleur choix dépend de la taille du fichier et de ce que vous souhaitez faire avec celui-ci.
Lire l’intégralité du fichier à la fois
La .read() méthode retourne l’intégralité du fichier sous forme de chaîne unique :
with open("notes.txt", "r") as file:
contents = file.read()
print(contents)
Cette approche fonctionne bien pour les petits fichiers, mais pour les fichiers très volumineux, il charge tout en mémoire à la fois.
Note
Si le fichier n’existe pas, open() en mode lecture déclenche un FileNotFoundError. Assurez-vous que le fichier existe avant d’essayer de le lire !
Lire le fichier sous la forme d’une liste de lignes
La .readlines() méthode retourne chaque ligne sous forme de chaîne distincte dans une liste. Chaque chaîne conserve le caractère de nouvelle ligne (\n) à la fin.
with open("notes.txt", "r") as file:
lines = file.readlines()
for line in lines:
print(line.strip()) # .strip() removes the trailing newline
Lire une ligne à la fois
La méthode la plus conviviale consiste à itérer directement sur l’objet de fichier. Python lit une ligne par boucle :
with open("notes.txt", "r") as file:
for line in file:
print(line.strip())
Ce modèle est recommandé pour les fichiers volumineux, car une seule ligne est conservée en mémoire à la fois.
Choix de l’approche appropriée
| Si vous souhaitez... | Utilisez... |
|---|---|
| Utiliser l’intégralité du fichier sous forme d’une seule chaîne | .read() |
| Obtenir une liste de lignes dans lesquelles vous pouvez indexer | .readlines() |
| Traiter chaque ligne une à la fois efficacement | for line in file |