Nous utilisons python comme un langage de script... De fait, nous avons la main sur l'espace des variables en fin d'exécution et le debugage est plutôt aisé... La question générale est: comment reprendre la main au milieu d'une méthode?
Le but de cette section est de rendre la main, temporairement, à l'utilisateur au milieu d'une méthode.
Permet d'obtenir le comportement suivant:
Hello 0 Hello 1 Hello 2 > <ipython-input-8-d0ad2c83c5f3>(7)maMethode() -> print("Hello ",v[i]) (Pdb) >?
On alors la main, et on peut demander la valeur de i
ou n'importe quelle variable locale.
dbstop if error
Malheureusement, c'est plus dur en python...
le programme plante et rend la main, mais il rend la main DANS la fonction qui a planté
Hello 0 Hello 1 Hello 2 Hello 3 Hello 4 Hello 5 Hello 6 Hello 7 > <ipython-input-2-02f871063e4c>(7)maMethode() -> print("Hello ",v[i]) (Pdb) >? i 8 (Pdb) >?
Nous avons accès à i