Maison >développement back-end >Tutoriel Python >Comment puis-je capturer et afficher une trace Full Stack en Python sans mettre fin au programme ?
Détecter les exceptions au traçage
Lorsque vous rencontrez des exceptions lors de l'exécution de Python, il peut être nécessaire de les capturer et de les enregistrer sans mettre fin brusquement au programme . Pour y parvenir, un bloc try/sauf peut être utilisé, dans lequel des exceptions spécifiques peuvent être gérées avec élégance.
Cependant, dans certains scénarios, il est souhaitable d'afficher l'intégralité de la trace de pile associée à l'exception, comme si l'exception avait été déclenchée sans le bloc try/sauf d'interception. Cela fournit des informations précieuses sur la cause spécifique et l'emplacement de l'erreur.
Pour obtenir un traçage complet, la méthode traceback.format_exc() peut être exploitée. Voici un exemple :
import traceback def do_stuff(): raise Exception("test exception") try: do_stuff() except Exception: print(traceback.format_exc())
Cet extrait de code produira le résultat suivant, imitant la trace de la pile d'exceptions par défaut :
Traceback (most recent call last): File "main.py", line 9, in <module> do_stuff() File "main.py", line 5, in do_stuff raise Exception("test exception") Exception: test exception
En utilisant la méthode traceback.format_exc(), l'intégralité le traçage est capturé et imprimé, fournissant un enregistrement détaillé de l'occurrence de l'exception. Ces informations peuvent être inestimables pour déboguer et comprendre la cause première des erreurs sans perturber l'exécution du programme.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!