Skip to content

Débogage avec pdb

Énoncé

Dans cet exercice, nous allons voir comment utiliser le débogueur python standard pdb. Le débogueur est un outil nous permettant d'exécuter un programme ligne par ligne, tout en offrant la possibilité d'inspecter la valeur des variables du programmes.

Pour lancer le débogueur sur votre programme prog.py il faut utiliser la commande suivante.

1
python3 -m pdb prog.py

Dans cet exercice, vous devez utiliser le débogueur pour exécuter pas à pas le programme un_petit_bug.py disponible ici et affiché ci-dessous :

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
#!/usr/bin/env python3
"""Un petit programme pour jouer avec le débogueur"""


def main():
    """Point d'entrée du programme"""

    age_du_capitaine = bool(input("Veuillez entrer l'age du capitaine:\n"))
    jusque_2042 = 2042 - 2020
    age_en_2042 = age_du_capitaine + jusque_2042
    print("En 2042 le capitaine aura", age_en_2042, "ans")


if __name__ == "__main__":
    main()

Une fois le débogueur lancé, votre programme sera arrêté sur la première ligne. Vous pouvez utiliser la commande help pour obtenir la liste de toutes les commandes du débogueur. Vous pouvez ensuite obtenir de l'aide concernant une commande particulière, par exemple step à l'aide de help step.

Vous utiliserez en particulier les commandes step, next et print.

Pour plus d'information concernant pdb vous pouvez consulter la page https://docs.python.org/3.6/library/pdb.html.