E/S de fichier Python : lire et écrire des fichiers en toute sécurité
Apprenez à lire et écrire des fichiers en Python. Maîtrisez open(), read(), write() et les gestionnaires de contexte pour gérer les opérations sur les fichiers en toute sécurité sans fuite de ressources.
Aperçu
Les entrées/sorties de fichiers (E/S) sont une fonctionnalité fondamentale qui permet aux programmes Python d'interagir avec le stockage persistant d'un ordinateur. Que vous construisiez un simple enregistreur, lisiez des fichiers de configuration ou traitiez des tableaux de données volumineux, votre programme a besoin d'un moyen fiable pour ouvrir, lire, écrire et fermer des fichiers sur le disque. Python fournit des fonctions claires et intégrées pour rendre l'interaction du système de fichiers simple et multiplateforme.
Le principal outil d'accès aux fichiers en Python est la fonction intégrée « open() ». Cette fonction accepte un chemin de fichier et une chaîne de mode. Le mode détermine comment on accède au fichier : "r" pour la lecture, "w" pour l'écriture (qui écrase le fichier), "a" pour ajouter du contenu à la fin et "b" pour le mode binaire (utile pour les images ou les données sérialisées). Surtout, chaque fois que vous ouvrez un fichier, il consomme un handle du système d’exploitation. Si vous ne parvenez pas à fermer le fichier, vous pouvez provoquer des fuites de mémoire ou des problèmes de verrouillage de fichier.
Pour garantir que les fichiers sont toujours correctement fermés, les développeurs Python utilisent l'instruction « with », qui implémente un gestionnaire de contexte. Lors de l'utilisation de « with open(...) as file: », Python ferme automatiquement le descripteur de fichier une fois le bloc de code terminé, même si une exception inattendue se produit à l'intérieur. La lecture des données peut être effectuée ligne par ligne en utilisant `for line in file:` ou en une seule fois via `.read()`, `.readline()` ou `.readlines()`. L'écriture du texte est gérée via `.write()` ou `.writelines()`, permettant des opérations de fichiers fluides, sûres et efficaces.
Sortie de code et d'exécution
Écrire un message d'accueil dans un fichier texte temporaire et le relire ligne par ligne à l'aide de gestionnaires de contexte sécurisés.
filename = "sample.txt"
# Writing to a file
with open(filename, "w") as file:
file.write("Hello, Python coder!\n")
file.write("This is a line in a file.\n")
file.write("File I/O is simple.\n")
print("File written successfully.\n--- Reading File ---")
# Reading from a file line by line
with open(filename, "r") as file:
for index, line in enumerate(file, 1):
print(f"Line {index}: {line.strip()}")File written successfully.
--- Reading File ---
Line 1: Hello, Python coder!
Line 2: This is a line in a file.
Line 3: File I/O is simple.Mise en œuvre étape par étape
- Erreurs de journalisation et sortie du programme
- Lecture des fichiers de configuration (par exemple, .env ou config.txt)
- Enregistrement des rapports utilisateur ou des résumés analytiques exportés
Foire aux questions
Quelle est la différence entre les modes écriture et ajout ?
Le mode écriture (« w ») tronque le fichier à une longueur nulle, supprimant tout contenu existant avant l'écriture. Le mode Ajout (« a ») place le curseur à la fin, ajoutant un nouveau texte sans supprimer le contenu existant.
Pourquoi devrais-je utiliser l'instruction with ?
L'instruction with agit comme un gestionnaire de contexte, garantissant la fermeture automatique des fichiers, ce qui évite les fuites de mémoire et les erreurs de verrouillage des fichiers.
Sujets connexes
Apprenez à écrire des gestionnaires de contexte personnalisés en Python. Maîtrisez le décorateur contextmanager et les méthodes __enter__/__exit__ pour la sécurité des ressources.
Analyse Python JSONApprenez à lire, écrire et analyser des données JSON en Python. Maîtrisez json.loads, json.dumps et personnalisez les encodeurs/décodeurs JSON.
Python CSVApprenez à gérer les données CSV en Python. Maîtrisez csv.reader, csv.writer et DictReader/DictWriter pour une analyse efficace des tables.
Ressources Python recommandées
Développez vos connaissances avec des didacticiels interactifs, des aide-mémoire et des comparaisons de codes associés.
Comment lire un fichier en Python
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.
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.