Utilitaire de débogage Python

WBOY
Libérer: 2024-08-05 19:04:31
original
1120 Les gens l'ont consulté

Python Debugging utility

pdbwhereami

But

Il s'agit d'un module utilitaire qui aide au débogage des sources Python avec les fonctions ci-dessous

  • whoami
  • où est-ce que tu es
  • qui m'a appelé
  • appeléarbre
  • qui est papa

Où est-il utilisé ?

Ce module aide les développeurs de plusieurs manières clés, notamment en matière de débogage et de maintenance du code. Voici les principaux avantages :

1. Débogage :

  • Identification des erreurs : Lorsqu'une erreur se produit, connaître le numéro de ligne et le fichier exacts peut réduire considérablement le temps passé à rechercher la cause. En appelant ces fonctions dans des messages d'erreur, les développeurs peuvent rapidement identifier l'origine d'un problème.
  • Traçabilité : En enregistrant le numéro de ligne et le nom du fichier, les développeurs peuvent retracer le chemin d'exécution du programme, en particulier lorsqu'ils traitent des bases de code complexes ou des projets multi-fichiers.

2. Journalisation :

  • Journaux détaillés : L'inclusion des numéros de ligne et des noms de fichiers dans les messages de journal fournit un contexte détaillé, rendant les journaux plus informatifs et plus faciles à interpréter.
  • Surveillance automatisée : Dans les grands systèmes, les outils de surveillance automatisés peuvent utiliser ces détails pour signaler des parties spécifiques du code qui causent fréquemment des problèmes, facilitant ainsi une maintenance proactive.

3. Assertions et versions de débogage :

  • Assertions : L'utilisation de macros comme assert() avec whoami,whereami, whocallme, Calledtree et whosdaddy aide à détecter les erreurs logiques pendant le développement. Lorsqu'une assertion échoue, elle imprime le numéro de ligne et le nom du fichier, ce qui facilite le débogage.
  • Compilation conditionnelle : Pour les versions de débogage, des informations de diagnostic supplémentaires peuvent être incluses à l'aide de ces macros sans affecter les versions de version.

4. Documentation et maintenance :

  • Révisions de code : Lors des révisions de code, disposer de journaux d'erreurs détaillés peut aider les réviseurs à comprendre le flux et à identifier plus efficacement les zones problématiques potentielles.
  • Maintenance : Pour la maintenance à long terme, disposer de rapports d'erreurs détaillés avec les numéros de ligne et les noms de fichiers aide les nouveaux développeurs à comprendre et à résoudre les problèmes sans avoir besoin d'une connaissance approfondie de l'ensemble de la base de code.

En tirant parti de whoami,whereami, whocallme, Calledtree et whosdaddy, les développeurs peuvent créer un code plus robuste, plus maintenable et plus facile à déboguer.

Comment l'utiliser ?

from pdbwhereami import whoami, whereami, whocalledme, calledtree, whosdaddy

def debug_utility():
    whoami()
    whoami("I am in test_whoami function")

    print()

    whereami()
    whereami("I am in test_whereami")
    whereami(obsolete_path = True)
    whereami(path_depth=6)

    print()

    whocalledme()
    whocalledme(obsolete_path = True)
    whocalledme(path_depth=6)

    print()

    calledtree()
    tstr = calledtree(verbose=False)
    print(tstr)
    calledtree(tree_depth=1)
    calledtree(tree_depth=2)

    print()
    whosdaddy()

debug_utility()
Copier après la connexion

sortir

[debug_utility] ->
[debug_utility] -> I am in test_whoami function

[whereami/main.py:71]:debug_utility ->
[whereami/main.py:72]:debug_utility -> I am in test_whereami
[/home/bhagavan/whereami/main.py:73]:debug_utility ->
[/home/bhagavan/whereami/main.py:74]:debug_utility ->

[whereami/main.py:93]:<module> ->
[/home/bhagavan/whereami/main.py:93]:<module> ->
[/home/bhagavan/whereami/main.py:93]:<module> ->

#1[/home/bhagavan/whereami/main.py:84]:debug_utility <--
#0[/home/bhagavan/whereami/main.py:93]:<module> <--

#1[/home/bhagavan/whereami/main.py:85]:debug_utility <--
#0[/home/bhagavan/whereami/main.py:93]:<module> <--

#0[/home/bhagavan/whereami/main.py:87]:debug_utility <--

#1[/home/bhagavan/whereami/main.py:88]:debug_utility <--
#0[/home/bhagavan/whereami/main.py:93]:<module> <--

[<module>] ->
Copier après la connexion

Installation

Utiliser pip

pip install pdbwhereami
Copier après la connexion

Utilisation des sources

git clone https://github.com/bhagavansprasad/pdbwhereami.git
cd pdbwhereami
pip insall ./
Copier après la connexion

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!

source:dev.to
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal