首页 何问起 前端特效 htbtn-4 闪电 使用方法

Python程序高效地调试

现在我在debug python程序就只是简单在有可能错误的地方print出来看一下,不知道python有没像c++的一些IDE一样有单步调试这类的工具?或者说各位python大神一般是怎么debug自己的python程序的?

 

应该用过 IPython 吧?想象一下,抛出异常时自动把你带到 IPython Shell 是不是很开心?而且和普通的IPython不同,这个时候可以调用 p (print), up(up stack), down(down stack) 之类的命令。还能创建临时变量,执行任意函数。

事实上这是可以实现的, 而且很简单,不过你要先安装 IPython。然后把以下代码保存为 `crash_on_ipy.py`

import sys

class ExceptionHook:
    instance = None

    def __call__(self, *args, **kwargs):
        if self.instance is None:
            from IPython.core import ultratb
            self.instance = ultratb.FormattedTB(mode='Plain',
                 color_scheme='Linux', call_pdb=1)
        return self.instance(*args, **kwargs)

sys.excepthook = ExceptionHook()
#何问起 hovertree.com

然后在你的项目代码某个地方 import crash_on_ipy 就可以了。

这个方法不需要 IDE.

推荐:http://www.cnblogs.com/roucheng/p/pythonstring.html
posted @ 2016-06-19 20:12  roucheng  阅读(413)  评论(0编辑  收藏  举报