Je sais que pdb est un système interactif et c'est très utile. Mon but ultime est de rassembler tous les états de mémoire après l'exécution de chaque commande dans certaines fonctions, commande par commande. Par exemple, avec un extrait de codeComment puis-je intégrer pdb dans mon programme? - Python
0: def foo() :
1: if True:
2: x=1
3: else:
4: x=2
5: x
alors l'état de la mémoire de chaque commande est
0: empty
1: empty
2: x = 1
3: x = 1
4: (not taken)
5: x = 1
Pour ce faire, ce que je voudrais faire avec pdb est d'écrire un script qui interagissent avec classe pdb. Je sais que s
est une fonction pour avancer dans les déclarations et print var
(dans le cas ci-dessus, var est x
) est une fonction pour imprimer la valeur de certaines variables. Je peux rassembler des variables à chaque commande. Ensuite, je veux exécuter un script comme ci-dessous:
import pdb
pdb.run('foo()')
while(not pdb.end()):
pdb.s()
pdb.print('x')
Mais je ne trouve pas comment implémenter cette fonctionnalité. Quelqu'un peut-il m'aider ??
Merci! Je pense que c'est exactement ce que je veux. Je vais essayer cette solution à mon projet. Merci beaucoup! – wooduckwooduck