之前一直说要学python可还是一直停留在看的层面,昨天大神手把书教我pdb调试,说要摆脱IDE集成开发环境编程,感激不尽,立一个flag,python一定要入门!
1、进入方式
1)windows cmd下或者anaconda prompt下,cd 到count_pdf.py目录下
2)大神告诉还可以在count_pdf.py上按shift点击鼠标右键--在此处打开命令窗口
2、python count_pdf.py会直接得到输出结果,这个不用我多说。下面介绍如何一步步调试
python -m pdb count_pdf.py
进入pdb调试模式
介绍常用命令: c
continue,输入c然后回车,程序就跑完了。让程序正常运行,直到遇到断点。表示continue 和matlab里面的continue一样
n
next,一步步,用n是不会进入被调用的函数体中的
s
step,可进入函数中,跟n相似,但是如果当前有一个函数调用,那么s会进入被调用的函数体中
b 行号
break,设置断点
b
单独一个b,用于查看断点索引号
cl+空格+数字代表清除第N个断点
clear,如果后面带有参数,就是清除指定的断点;如果不带参数就是清除所有的断点。注意此时的数字不代表行数 代表你设置断点的断点索引号
cl后的代码显示时 前面的B没了
p 变量
print变量
l
list打印当前代码段
ll
打印所有代码段
3、整段代码的调试过程
它描述的过程就是
初始状态我代码运行到16行,
然后n下一行,
经过4个n然后到了count_pdf(os,path.join(path,p)),
然后我输入s
step in到了 变量os.path.join()函数里面
然后执行了一下r(return,执行代码直到当前函数返回)直接到了这个函数的末尾
return后我继续执行s
于是到了count_pdf(os,path.join(path,p))的外部函数count_pdf(),由于count_pdf()这个函数是我自己定义的并且在count_pdf.py文件里面,所以会转到当前py文件的第7行。
这就是执行过程。
再此感谢大神!!!嘿哈