Comment lire un fichier en Python (texte et JSON)
Apprenez à lire des fichiers en Python. Maîtrisez l'instruction with open, readline, readlines et gérez en toute sécurité les exceptions de fichiers.
Aperçu
La gestion des fichiers est une compétence essentielle pour tout développeur Python. La lecture de données à partir de fichiers vous permet de traiter des documents texte, des configurations, des journaux, des bases de données et des ensembles de données structurés. Python rend les opérations sur les fichiers remarquablement simples grâce à sa fonction intégrée « open() ».
Lorsque vous travaillez avec des fichiers, la meilleure pratique la plus importante consiste à utiliser l'instruction « with », qui crée un gestionnaire de contexte. Le modèle `with open(...)` garantit que le fichier est fermé en toute sécurité et correctement dès que l'exécution quitte le bloc, même si une exception se produit à l'intérieur. Oublier de fermer des fichiers peut entraîner des fuites de mémoire, une corruption de fichiers et verrouiller les ressources d'autres processus système.
Python propose plusieurs méthodes pour lire les données une fois un fichier ouvert. La méthode `.read()` renvoie l'intégralité du contenu du fichier sous la forme d'une seule chaîne. La méthode `.readline()` lit une seule ligne, ce qui la rend parfaite pour parcourir des fichiers géants qui ne rentreraient pas dans la mémoire. La méthode `.readlines()` lit toutes les lignes et les renvoie sous forme de liste de chaînes. Comprendre quelle méthode utiliser évite l’épuisement de la mémoire et rend vos programmes plus évolutifs.
Sortie de code et d'exécution
Ce script montre la lecture du contenu d'un fichier en toute sécurité à l'aide du gestionnaire de contexte avec une lecture ligne par ligne et une gestion des erreurs.
# Writing a dummy file first
with open("sample.txt", "w") as f:
f.write("Line 1: Welcome to PyRun!\nLine 2: Python runs in the browser.\nLine 3: Clean and simple.")
# 1. Read entire file contents
with open("sample.txt", "r") as file:
content = file.read()
print("--- Entire File ---")
print(content)
# 2. Read line-by-line (Memory efficient for large files)
print("\n--- Line by Line ---")
with open("sample.txt", "r") as file:
for line in file:
print("Read line:", line.strip())--- Entire File ---
Line 1: Welcome to PyRun!
Line 2: Python runs in the browser.
Line 3: Clean and simple.
--- Line by Line ---
Read line: Line 1: Welcome to PyRun!
Read line: Line 2: Python runs in the browser.
Read line: Line 3: Clean and simple.Mise en œuvre étape par étape
- Utilisez l'instruction with open("filename", "r") as file pour ouvrir le fichier en toute sécurité en lecture.
- Appelez file.read() pour charger l’intégralité du contenu du fichier dans une variable.
- Parcourez directement l'objet fichier à l'aide d'une boucle for pour le lire efficacement ligne par ligne.
- Spécifiez toujours l'encodage (par exemple, encoding="utf-8") pour la compatibilité internationale des caractères.
Foire aux questions
Pourquoi devrais-je utiliser l’instruction with pour ouvrir des fichiers ?
L'instruction with crée un gestionnaire de contexte qui ferme automatiquement le fichier à la sortie du bloc, même si des erreurs se produisent.
Comment gérer une FileNotFoundError ?
Enveloppez votre instruction open() dans un bloc try-sauf, en attrapant FileNotFoundError: try: with open(...) ... except FileNotFoundError: print("File not found!").
Sujets connexes
Apprenez à écrire du texte dans des fichiers en Python. Maîtrisez la différence entre les modes d'écriture ("w") et d'ajout ("a") avec des gestionnaires de contexte sécurisés.
Comment gérer les exceptions en PythonApprenez à gérer les exceptions en Python à l’aide des blocs try, except, else et enfin. Écrivez du code Python sans erreur et résistant aux plantages.
Ressources Python recommandées
Développez vos connaissances avec des didacticiels interactifs, des aide-mémoire et des comparaisons de codes associés.
Variables et types de données Python expliqués
Comprendre les variables Python et les types de données de base (chaînes, entiers, flottants, booléens). Un guide complet pour débutants sur l'affectation de mémoire en Python.
Aide-mémoire sur les méthodes du dictionnaire Python
Apprenez les méthodes du dictionnaire Python. Guide de référence complet pour les insertions, les récupérations, les mises à jour et les vérifications de paires clé-valeur.
Python vs JavaScript : quel langage de programmation est le meilleur ?
Une comparaison complète entre Python et JavaScript. Explorez les différences de syntaxe, les performances, les cas d'utilisation (backend et frontend) et des exemples de codage.