5.10 快速定位错误进入调试模式

https://image.iswbm.com/20200804124133.png

当你在写一个程序时,最初的程序一定遇到不少零零散散的错误,这时候就免不了调试一波。

如果你和我一样,习惯使用 pdb 进行调试的话,一定有所体会,通常我们都要先把 pdb.set_trace() 去掉,让程序畅通无阻,直到它把异常抛出来。

出现异常后,再使用 vim 跳转到抛出异常的位置,敲入 import pdb;pdb.set_trace() ,然后再到运行,进入调试模式,找到问题并修改代码后再去掉我们加上的那行 pdb 的代码。

如此反复这样一个过程,直到最后程序没有异常。

你应该能够感受到这个过程有多繁锁,令人崩溃。

接下来介绍一种,可以让你不需要修改源代码,就可以在异常抛出时,快速切换到调试模式,进入 『案发现场』排查问题。

方法很简单,只需要你在执行脚本时,加入 -i 参考

https://image.iswbm.com/20200615235900.png

如果你的程序没有任何问题,加上 -i 后又会有什么不一样呢?

从下图可以看出,程序执行完成后会自动进入 console 交互模式。

https://image.iswbm.com/image-20200616000039009.png