đ DĂ©boguer
DĂ©boguer signifie observer lâexĂ©cution de notre programme Ă©tape par Ă©tape pour comprendre son comportement, trouver des erreurs (bugs), ou vĂ©rifier lâĂ©tat des variables.
PyCharm offre un excellent environnement de débogage avec des outils visuels intégrés.
Point d'arrĂȘtâ
Un point dâarrĂȘt (breakpoint) permet de dire Ă PyCharm : "ArrĂȘte ici quand tu exĂ©cutes le programme."
- Ouvrir un fichier
.py
. - Cliquer dans la marge gauche Ă cĂŽtĂ© dâune ligne de code pour y placer un point rouge (le point dâarrĂȘt).
i = 0
while i < 5:
carre = i * i
print(f"{i}ÂČ = {carre}")
i += 1
- Cliquer sur le bouton
Debug (à cÎté du bouton ⶠRun).
- Le programme sâarrĂȘtera Ă cette ligne, et PyCharm affichera la fenĂȘtre de dĂ©bogage avec la pile d'appels Ă gauche et les variables Ă droite :
Lorsquâun point dâarrĂȘt est atteint, on peut faire :
Stop : arrĂȘter lâexĂ©cution.
Resume : continuer lâexĂ©cution jusquâau prochain point dâarrĂȘt rencontrĂ©.
Step Over : exécuter la ligne actuelle (mais sans entrer dans les fonctions appelées).
Step Into : entrer dans la fonction appelĂ©e pour voir ce quâelle fait.
Pour retirer un point dâarrĂȘt, cliquer Ă nouveau dessus dans la marge gauche.
Ăvaluer une expressionâ
Quand l'exĂ©cution est arrĂȘtĂ©e Ă un point dâarrĂȘt, on peut Ă©valuer une expression, c'est-Ă -dire voir le rĂ©sultat dâun calcul ou le contenu dâune variable.
- Cliquer dans l'espace Evaluate Expression dans la fenĂȘtre de dĂ©bogage.
- Taper ou copier-coller une expression Python (par ex.
i + 1
,carre
, oui * i
). - Le rĂ©sultat sâaffiche immĂ©diatement, sans modifier le programme (dans result).
Visualiser la pile d'appelsâ
Le débogueur permet d'inspecter tous les détails de la pile d'appels.
Copiez le code ci-dessous dans un script, mettez un point d'arrĂȘt sur la ligne 12 (valeur = ...
) et exécutez le script en mode débogage.
def ajouter(x, y):
return x + y
def multiplier(x, y):
return x * y
def calculer_expression(a, b, c):
somme = ajouter(a, b)
resultat = multiplier(somme, c)
return resultat
valeur = calculer_expression(2, 3, 4)
print(valeur) # Affiche 20
Pour entrer dans les fonctions appelées en mode débogage, il faut utiliser le bouton Step Into .
Lorsque vous entrez dans la fonction calculer_expression
, vous voyez :
- cette fonction s'ajouter au sommet de la pile d'appels (Ă gauche),
- les paramĂštres
a
,b
etc
apparaĂźtre dans la liste des variables (Ă droite) :

Si vous appuyez de nouveau sur , vous entrez dans la fonction
ajouter
.
Vous pouvez voir que la fonction ajouter
est maintenant au sommet de la pile d'appels, et les paramĂštres x
et y
sont affichés dans la liste des variables :

Remarquez que les paramĂštres a
, b
et c
de calculer_expression
ne sont plus visibles, car vous ĂȘtes maintenant dans la fonction ajouter
et a
, b
et c
sont hors de portée.
Vous pouvez cliquer sur le nom de la fonction calculer_expression
dans la pile d'appels pour revenir Ă cette fonction et voir ses paramĂštres Ă nouveau :

Lorsque vous faite une trace d'un code avec des appels de fonctions, il est nécessaire de noter la pile d'appels et les variables locales à chaque étape.
Le débogueur est alors le meilleur outil pour valider votre trace... sauf en examen!