当我使用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步)。
提前致谢!