5.10 快速定位错误进入调试模式 ============================= .. image:: http://image.iswbm.com/20200804124133.png 当你在写一个程序时,最初的程序一定遇到不少零零散散的错误,这时候就免不了调试一波。 如果你和我一样,习惯使用 pdb 进行调试的话,一定有所体会,通常我们都要先把 ``pdb.set_trace()`` 去掉,让程序畅通无阻,直到它把异常抛出来。 出现异常后,再使用 vim 跳转到抛出异常的位置,敲入 ``import pdb;pdb.set_trace()`` ,然后再到运行,进入调试模式,找到问题并修改代码后再去掉我们加上的那行 pdb 的代码。 如此反复这样一个过程,直到最后程序没有异常。 你应该能够感受到这个过程有多繁锁,令人崩溃。 接下来介绍一种,可以让你不需要修改源代码,就可以在异常抛出时,快速切换到调试模式,进入 『案发现场』排查问题。 方法很简单,只需要你在执行脚本时,加入 ``-i`` 参考 .. image:: http://image.iswbm.com/20200615235900.png 如果你的程序没有任何问题,加上 ``-i`` 后又会有什么不一样呢? 从下图可以看出,程序执行完成后会自动进入 console 交互模式。 .. image:: http://image.iswbm.com/image-20200616000039009.png