使用pdb/日志/gdb调试Python

1、下面网上收罗的资料初学者应该够用了,但对比IBM的Python 代码调试技巧:

IBM:包括 pdb 模块、利用 PyDev 和 Eclipse 集成进行调试、PyCharm 以及 Debug 日志进行调试:

http://www.ibm.com/developerworks/cn/linux/l-cn-pythondebugger/


2、另一份来自百度文库的《python日志输出----logging浅析与使用》比较全面,也受益匪浅,自己刚开始学手头没东西做,希望自己接下来能用上:

http://wenku.baidu.com/view/f351e70390c69ec3d5bb75f7.html

http://wenku.baidu.com/view/682b5b81bceb19e8b9f6ba00.html


3、使用gdb调试python脚本

http://hi.baidu.com/kanif/item/b6314f892fe9de58840fab94


网上搜集的:

一、Shell下

首先你选择运行的 py

python -m pdb myscript.py
(Pdb) 会自动停在第一行,等待调试,这时你可以看看 帮助
(Pdb) h

二、Python 2.7(IDLE)

#!/usr/bin/python
_DEBUG=True   #easier to debug
def debug_demo(val):
    if _DEBUG==True:
        import pdb
        pdb.set_trace()

        ....

其实也就两句话:       

import pdb
pdb.set_trace()

具体语法如下(其实和我以前学的在shell下调试是一样的)

>断点设置 
   (Pdb)b  10 #断点设置在本py的第10行
   或(Pdb)b  ots.py:20 #断点设置到 ots.py第20行
   删除断点(Pdb)b #查看断点编号

            (Pdb)cl 2 #删除第2个断点

>运行

    (Pdb)n #单步运行
    (Pdb)s #细点运行 也就是会下到,方法

    (Pdb)c #跳到下个断点

   (Pdb)r #运行到返回前,可以看到程序返回结果

>查看
    (Pdb)p param #查看当前 变量值
    (Pdb)l #查看运行到某处代码
    (Pdb)a #查看全部栈内变量

>帮助

(Pdb) h       可以看到所有的指令

(Pdb) h c     具体查看指令c的帮助
c(ont(inue))
Continue execution, only stop when a breakpoint is encountered

>如果是在 命令行里的调试为:
import pdb
def tt():
    pdb.set_trace()
    
for i in range(15):
        
print i
>>> tt()
> <stdin>(3)tt()
(Pdb) n
以上转自:http://www.blogjava.net/Skynet/archive/2009/04/07/264259.html
配了代码,可能有助于第一次看:http://blog.csdn.net/magicbreaker/article/details/3754733
阅读更多
个人分类: python
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

不良信息举报

使用pdb/日志/gdb调试Python

最多只允许输入30个字

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭