Python pdb是否有可能“回到过去”?

时间:2015-12-14 18:35:07

标签: python debugging pdb

当我使用pdb单步执行代码时,是否可以向后或“及时”进入先前的程序状态。

E.g。

form l import f
x = 2
y = f(x)
z = y + 2

让我说我走到最后一行

form l import f
x = 2
y = f(x)
z = y + 2  # <-----

然后我意识到出了什么问题,我应该步入f。而不是必须重新启动pdb调试过程,我可以倒退吗?

form l import f
x = 2
y = f(x)   # <----- come here backwards, and then step into f
z = y + 2

如果是这样,那将是一种非常强大的调试方式。如果可能的话,我可以在一个pdb会话中摆脱大多数错误。

如果没有实现此功能,实施起来有多复杂?我猜你需要在每一行保存整个python程序状态(或者只保留最后一个python状态,这样我们最多可以返回1步)。

提前致谢!

0 个答案:

没有答案