使用PDB模式调试Python程序介绍


Posted in Python onApril 05, 2015

以前在windows下一直用的idel带的功能调试python程序,在linux下没调试过。(很多时候只是print)就从网上查找一下~

方法:

python -m pdb a.py

a.py是python文件。

(Pdb)模式下的常用命令:

q
退出debug

h 即help,打印所有可以命令

h w
打印命令 w 的含意

n
执行当前行直到到达下一行或直到它返回

s
执行当前行,一有可能就停止(比如当前行有一个函数调用)。它和n(next)的区别是当前行中有函数调用时s(step)会停止当前行的执行而去调用那个函数,而n不会停止,直到计算完成这一行(到达下一行)。

b(reak) [[filename:]lineno | function[, condition]]
设置断点,可以是行号或函数。如 b 10, b foo, b foo,n == 5,最后在函数foo()入口处设置一个断点,但仅当n的值是5时才有效。当b命令无参数时,打印所有断点。

tb(reak) [[filename:]lineno | function[, condition]]
临时断点,只hit一次。

disable [bpnumber [bpnumber ...]]
使指点行的断点(们)失效

enable [bpnumber [bpnumber ...]]
使指定行上的断点(们)有效

c
继续执行程序,直到遇到下一个断点

w
即where,打印当前执行点的位置

l [first, [,last]]
输出当前行附近的源码

p expression
执行一个表达式当打印其值。

a(rgs)
打印当前函数的参数及其值

<直接回车>
重复执行上次的命令

并遇到pdb不认识的命令时,会将它当成python表达式执行。如果你想执行的表达时,最前面加上 ! 字符,比如 !n == 5

多个debug命令可以写在一行上,中间用两个分号分隔,如 s;;s。

Python 相关文章推荐
python实现根据ip地址反向查找主机名称的方法
Apr 29 Python
Python通过poll实现异步IO的方法
Jun 04 Python
Python搭建APNS苹果推送通知推送服务的相关模块使用指南
Jun 02 Python
浅谈python中scipy.misc.logsumexp函数的运用场景
Jun 23 Python
Python 搭建Web站点之Web服务器网关接口
Nov 06 Python
Python中的浮点数原理与运算分析
Oct 12 Python
Python实现随机生成手机号及正则验证手机号的方法
Apr 25 Python
Django实现文件上传和下载功能
Oct 06 Python
python使用opencv在Windows下调用摄像头实现解析
Nov 26 Python
Django中使用MySQL5.5的教程
Dec 18 Python
python实现跨excel sheet复制代码实例
Mar 03 Python
Jupyter Notebook 远程访问配置详解
Jan 11 Python
python使用calendar输出指定年份全年日历的方法
Apr 04 #Python
python获取指定网页上所有超链接的方法
Apr 04 #Python
python中字典dict常用操作方法实例总结
Apr 04 #Python
python随机生成指定长度密码的方法
Apr 04 #Python
python统计字符串中指定字符出现次数的方法
Apr 04 #Python
python使用sorted函数对列表进行排序的方法
Apr 04 #Python
python实现的简单猜数字游戏
Apr 04 #Python
You might like
php实现无限级分类
2014/12/24 PHP
8个PHP数组面试题
2015/06/23 PHP
解决laravel(5.5)访问public报错的问题
2019/10/12 PHP
刷新时清空文本框内容的js代码
2007/04/23 Javascript
来自chinaz的ajax获取评论代码
2008/05/03 Javascript
通过Jscript中@cc_on 语句识别IE浏览器及版本的代码
2011/05/07 Javascript
Javascript 面向对象(二)封装代码
2012/05/23 Javascript
jQuery中$.ajax()和$.getJson()同步处理详解
2015/08/12 Javascript
JS实现不使用图片仿Windows右键菜单效果代码
2015/10/22 Javascript
JS弹出窗口的运用与技巧大全
2016/11/01 Javascript
lhgcalendar时间插件限制只能选择三个月的实现方法
2017/07/03 Javascript
基于es6三点运算符的使用方法(实例讲解)
2017/10/12 Javascript
BootStrap Validator 根据条件在JS中添加或移除校验操作
2017/10/12 Javascript
vue项目在安卓低版本机显示空白的原因分析(两种)
2018/09/04 Javascript
如何基于原生javaScript生成带图片的二维码
2019/11/21 Javascript
node.js中module模块的功能理解与用法实例分析
2020/02/14 Javascript
JavaScript实现矩形块大小任意缩放
2020/08/25 Javascript
python操作摄像头截图实现远程监控的例子
2014/03/25 Python
python实现定时同步本机与北京时间的方法
2015/03/24 Python
python类和继承用法实例
2015/07/07 Python
python 调用钉钉机器人的方法
2019/02/20 Python
Django实现WebSSH操作物理机或虚拟机的方法
2019/11/06 Python
python计算无向图节点度的实例代码
2019/11/22 Python
Python sep参数使用方法详解
2020/02/12 Python
TCP协议通讯的过程和步骤是什么
2015/10/18 面试题
什么是静态路由?什么是动态路由?各自的特点是什么?
2015/09/16 面试题
开业庆典答谢词
2014/01/18 职场文书
人力资源部经理的岗位职责
2014/03/04 职场文书
感恩教育活动总结
2014/05/05 职场文书
企业标语口号
2014/06/10 职场文书
2014群众路线学习笔记
2014/11/06 职场文书
2015年全国助残日活动方案
2015/05/04 职场文书
《1942》观后感
2015/06/08 职场文书
2015年终个人政治思想工作总结
2015/11/24 职场文书
python获取淘宝服务器时间的代码示例
2021/04/22 Python
python必学知识之文件操作(建议收藏)
2021/05/30 Python