python在Ubuntu系统下的调试工具pdb
来源:互联网 发布:徐志摩 云中鹤 知乎 编辑:程序博客网 时间:2024/06/05 09:54
使用 pdb 进行调试
pdb 是 python 自带的一个包,为 python 程序提供了一种交互的源代码调试功能,主要特性包括设置断点、单步调试、进入函数调试、查看当前代码、查看栈片段、动态改变变量的值等。pdb 提供了一些常用的调试命令
参考链接
简而言之就两步:
- 1.import pdb
- 2.设置断点 pdb.set_trace()
命令 : 解释
- break 或 b : 设置断点 设置断点
- continue 或 c : 继续执行程序
- list 或 l : 查看当前行的代码段
- step 或 s : 进入函数
- return 或 r : 执行代码直到从当前函数返回
- exit 或 q : 中止并退出
- next 或 n : 执行下一行
- p : 打印变量的值
- help : 帮助
示例
import pdb a = "aaa" pdb.set_trace() b = "bbb" c = "ccc" final = a + b + c print final
使用python -m pdb mysqcript.py
这样的方式,(Pdb) 会自动停在第一行,等待调试;这时你可以看看帮助 (Pdb) h(elp)
说明下这几个关键 命令
断点设置
(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 #查看全部栈内变量(Pdb)w 列出目前call stack 中的所在层。(Pdb)d 在call stack中往下移一层(Pdb)u 在call stack中往上移一层。如果在上移一层之后按下 n ,则会在上移之后的一层执行下一个叙述,之前的 function call 就自动返回。(Pdb)cl 清除指定的断点。如果没有带参数,则清除所有断点。(Pdb)disable 取消所有断点的功能,但仍然保留这些断点。(Pdb)enable 恢复断点的功能。(Pdb)ignore 设定断点的忽略次数。如果没指定 count,其初始 为 0。当 count 为 0 时,断点会正常动作。若有指定 count,则每次执行到该中断, count 就少 1,直到 count 数为 0。(Pdb)condition bpnumber [condition](Pdb)j(ump) lineNo. 跳到某行执行。只有在 call stack 的最底部才能作用。(Pdb)l 列出目前所在档案中的位置。连续地 l 命令会一直列到档案结尾,可以使用指定行数或范围来打印。(Pdb)pp 和 p 命令类似,但是使用 pprint module(没用过 pprint,详情请参考 Python Library Reference)。(Pdb)alias 以一个"别名"代替"一群除错命令",有点类似 c/c 的 macro(详情请参考 Python Library Reference)。(Pdb)unalias 取消某个 alias。(Pdb)[!]statement 在目前的环境(context)中执行叙述。
0 0
- python在Ubuntu系统下的调试工具pdb
- python调试工具pdb
- Python 调试工具 PDB
- Python调试工具pdb
- Python 调试工具 PDB
- python在linux下代码调试pdb
- python的调试工具pdb使用问题解决
- python的debug调试工具pdb学习
- Python 调试工具 pdb 的使用
- Python 调试工具 PDB(Linux 环境下调试)
- python调试工具pdb和ipdb的使用
- linux环境下python的pdb调试方法
- python的pdb调试命令
- 在Ubuntu系统下安装使用Python的GUI工具wxPython
- Android开发板在Linux系统下的调试工具
- 在Ubuntu系统下使用Kdevelop调试NS的方法
- 使用pdb进行python的调试
- The python debugger调试(PDB)的简介
- 【Qt】Centos7 qt出现cannot find -lGL
- 人脸对齐 3000fps
- 阿里云服务器更换系统盘之后ssh登录不上解决办法
- Find Minimum in Rotated Sorted Array
- 题解:Repeated DNA Sequences
- python在Ubuntu系统下的调试工具pdb
- Mongodb重难点解析(三、重点突破)
- cmake:用add_subdirectory()添加外部项目文件夹
- Oracle触发器及使用举例(几种触发器类型)
- Android--LayoutAnimation介绍
- CUDA跟OpenCV的混合编程,注意OpenCV需要重新编译
- js浏览器类别检测及操作系统
- js语法5---canvas圆角图片
- 【NOI2007T2】货币兑换-DP斜率优化+CDQ分治