Python, les exceptions liées aux fichiers

Retrouvez le sommaire des articles Python sur ce lien.

En Python 3, lors de la gestion de fichiers, des exceptions peuvent être levées si une erreur se produit pendant l’ouverture, la fermeture, l’écriture ou la lecture d’un fichier. Ces exceptions sont appelées des exceptions d’E/S (entrée/sortie) et sont levées lorsque des opérations sur un fichier échouent pour des raisons telles que des autorisations insuffisantes, un fichier manquant ou un disque plein.

Les exceptions d’E/S les plus courantes liées à la gestion des fichiers en Python 3 sont les suivantes :

  • FileNotFoundError : levée lorsque le fichier spécifié est introuvable.
  • PermissionError : levée lorsque l’utilisateur n’a pas les autorisations nécessaires pour effectuer l’opération de fichier demandée.
  • IOError : levée lorsqu’une opération de lecture ou d’écriture échoue.
  • OSError : levée lorsqu’une erreur système se produit, telle qu’un disque plein.
  • ValueError : levée lorsqu’une fonction de gestion de fichiers reçoit une valeur incorrecte.

Pour gérer ces exceptions, on peut utiliser une instruction try et except. L’instruction try permet d’essayer une opération qui peut éventuellement lever une exception, tandis que l’instruction except permet de gérer l’exception levée en exécutant un bloc de code spécifique.

Voici un exemple de code qui montre comment gérer l’exception FileNotFoundError lors de l’ouverture d’un fichier :

try: 
     with open("fichier_inexistant.txt", "r") as fichier: 
         contenu = fichier.read() 
except FileNotFoundError: 
     print("Le fichier n'existe pas.")

Dans cet exemple, l’instruction with tente d’ouvrir le fichier « fichier_inexistant.txt«  en mode lecture. Si le fichier n’existe pas, l’exception FileNotFoundError est levée. L’instruction except gère cette exception en affichant un message à l’utilisateur.

Voici un autre exemple de code qui montre comment gérer l’exception PermissionError lors de l’écriture dans un fichier :

try: 
     with open("fichier_protecte.txt", "w") as fichier: 
         fichier.write("Contenu du fichier.") 
except PermissionError: 
     print("Vous n'avez pas la permission d'écrire dans ce fichier.")

Dans cet exemple, l’instruction with tente d’ouvrir le fichier « fichier_protecte.txt«  en mode écriture. Si l’utilisateur n’a pas la permission d’écrire dans ce fichier, l’exception PermissionError est levée. L’instruction except gère cette exception en affichant un message à l’utilisateur.

En somme, la gestion des exceptions liées à la gestion des fichiers en Python 3 est essentielle pour garantir que les opérations de lecture, d’écriture et de manipulation de fichiers se déroulent sans problème. En utilisant des instructions try et except, les exceptions d’E/S peuvent être gérées efficacement et les utilisateurs peuvent recevoir des messages d’erreur clairs et précis.

Laisser un commentaire

Ce site utilise Akismet pour réduire les indésirables. En savoir plus sur comment les données de vos commentaires sont utilisées.