python Debug 单步调试
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python Debug 单步调试相关的知识,希望对你有一定的参考价值。
一直犯愁的是python的调试,曾经写c都是编译完了用gdb直接调试了,轻松愉快。如今遇到这么一个解释型的程序。不知道怎么办了。用log吧,有时就是一个小程序,不想写这么多代码。打屏吧。有时屏幕翻得快,也是挺郁闷的。今天最终好了,看到了一个实用的东西。PDB
方法一:执行 python -m pdb myscript.py
(Pdb) 会自己主动停在第一行。等待调试,这时你能够看看 帮助
(Pdb) h
说明下这几个关键 命令
<断点设置
(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)p param #查看当前 变量值
(Pdb)l #查看执行到某处代码
(Pdb)a #查看所有栈内变量
<假设是在 命令行里的调试为:
import pdb
def tt():
pdb.set_trace()
for i in range(1, 5):
print i
<<< tt()
#这里支持 n p c 而已
< (3)tt()
(Pdb) n
方法一:执行 python -m pdb myscript.py
(Pdb) 会自己主动停在第一行。等待调试,这时你能够看看 帮助
(Pdb) h
说明下这几个关键 命令
<断点设置
(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)p param #查看当前 变量值
(Pdb)l #查看执行到某处代码
(Pdb)a #查看所有栈内变量
<假设是在 命令行里的调试为:
import pdb
def tt():
pdb.set_trace()
for i in range(1, 5):
print i
<<< tt()
#这里支持 n p c 而已
< (3)tt()
(Pdb) n
以上是关于python Debug 单步调试的主要内容,如果未能解决你的问题,请参考以下文章