Comment convertir une exception en chaîne de caractères en Python
Une "exception" est une circonstance qui perturbe le déroulement normal des instructions durant l'exécution d'un programme. Python cesse d'exécuter un programme/code lorsqu'une exception est lancée. Si vous êtes développeur Python, vous avez probablement rencontré des erreurs ou des exceptions dans votre code. Python fournit diverses méthodes pour gérer ces exceptions avec le bloc "try-except". Cependant, parfois vous voudrez peut-être convertir une exception en chaîne de caractères pour obtenir plus d'informations sur l'erreur.
Dans cet article Python, nous allons explorer les méthodes pour convertir une exception en une chaîne Python.
Comment convertir une exception en une chaîne Python ?
Pour convertir une exception en chaîne, appliquez les approches suivantes :
- "str()" fonction.
- format_exc() fonction.
- "repr()" fonction.
Méthode 1 : Convertir une exception en chaîne de caractères en Python en utilisant la fonction "str()"
La manière la plus simple de convertir une exception en chaîne est d'utiliser la fonction intégrée « str() ». Cette fonction accepte un objet comme argument et récupère une représentation sous forme de chaîne de l'objet. Elle renvoie un message d'erreur lorsque l'objet d'exception est passé comme argument.
Syntaxe
str(object)Ici, « objet » est tout objet Python qui peut être converti en une représentation sous forme de chaîne. La fonction « str() » retourne un objet chaîne.
Exemple
L'exemple suivant illustre le concept discuté :
try: print(1 + '3')
except Exception as e: error_message = str(e)
print(error_message)
print(type(error_message))Dans le code ci-dessus, l'exception “TypeError” est capturée par le bloc “except”. Le bloc “except” assigne l'objet d'exception à la variable “e” et il est ensuite passé à la fonction “str()” en tant qu'argument qui le convertit en chaîne.
Sortie
Dans la sortie ci-dessus, l'exception a été convertie en chaîne de caractères de manière appropriée.
Méthode 2 : Convertir une exception en chaîne en Python en utilisant la fonction "traceback.format_exc()".
La fonction traceback.format_exc() du module traceback peut également être utilisée pour convertir une exception en chaîne de caractères. Cette fonction renvoie un traceback formaté pour la dernière exception qui s'est produite. Dans le traceback, vous trouverez/le message d'erreur, l'emplacement où l'erreur s'est produite, et la pile d'appels de fonction.
Syntaxe
traceback.format_exc(limit=None, chain=True)Dans la syntaxe ci-dessus :
- Le paramètre « limite (facultatif) » indique le nombre de niveaux de pile à afficher pour chaque exception dans le traceback. La valeur par défaut « Aucun » signifie que tous les niveaux sont affichés.
- Le paramètre « chain » est optionnel et sa valeur par défaut est « true ». Lorsqu'il est défini sur « true », la fonction imprime la trace complète de l'exception et toutes les exceptions dans la chaîne. En le définissant sur « false », elle imprime uniquement la trace de l'exception la plus récente.
Exemple
Par exemple, examinons le code suivant :
import traceback
try: value = 'Hello'
print(int(value))
except Exception as e: error_message = traceback.format_exc()
print(error_message)
print(type(error_message))Selon le code ci-dessus, le bloc “try-except” est utilisé pour gérer l'exception et afficher le message d'erreur en utilisant le module “traceback”. La fonction “traceback.format_exc()” récupère une chaîne qui contient la trace de la pile de l'exception.
Sortie
Ce résultat indique que l'exception a été convertie avec succès en une chaîne.
Méthode 3 : Convertir une exception en chaîne de caractères en Python en utilisant la fonction "repr()"
En Python, la fonction repr() est utilisée pour retourner une représentation imprimable d'un objet en Python. Cette fonction peut également être appliquée pour convertir une exception en chaîne.
Syntaxe
repr(object)Dans cette syntaxe, “objet” est tout objet Python dont la représentation imprimable doit être retournée.
Exemple
Considérez le code exemple suivant :
try: value = 'Hello'
print(int(value))
except Exception as e: error_message = repr(e)
print(error_message)
print(type(error_message))Dans le bloc de code ci-dessus, la fonction repr() est utilisée dans le bloc except pour attraper l'exception rencontrée et la convertir en chaîne de caractères.
Sortie
Selon la sortie ci-dessus, l'exception rencontrée a été convertie en chaîne.
Conclusion
Pour convertir une exception en chaîne de caractères en Python, appliquez la fonction « str() », la fonction « traceback.format_exc() » ou la fonction « repr() ». Toutes ces fonctions sont utilisées en combinaison avec les blocs « try-except » pour attraper et convertir l'exception rencontrée en chaîne de caractères. Ce guide présente diverses méthodes pour convertir une exception en chaîne de caractères en Python en utilisant de nombreux exemples.


