使用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自动化测试之从命令行运行测试用例with verbosity
Sep 28 Python
Python+matplotlib实现华丽的文本框演示代码
Jan 22 Python
Django使用详解:ORM 的反向查找(related_name)
May 30 Python
Python进程间通信Queue消息队列用法分析
May 22 Python
Python获取命令实时输出-原样彩色输出并返回输出结果的示例
Jul 11 Python
如何使用pandas读取txt文件中指定的列(有无标题)
Mar 05 Python
Python3 中sorted() 函数的用法
Mar 24 Python
keras 自定义loss损失函数,sample在loss上的加权和metric详解
May 23 Python
python爬取代理IP并进行有效的IP测试实现
Oct 09 Python
sublime3之内网安装python插件Anaconda的流程
Nov 10 Python
如何利用python生成MD5并去重
Dec 07 Python
python在package下继续嵌套一个package
Apr 14 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
教你IIS6的PHP最佳配置方法
2006/09/05 PHP
PHP令牌 Token改进版
2008/07/18 PHP
PHP 身份验证方面的函数
2009/10/11 PHP
PHP 获取客户端真实IP地址多种方法小结
2010/05/15 PHP
PHP APC的安装与使用详解
2013/06/13 PHP
你应该知道PHP浮点数知识
2015/05/13 PHP
Thinkphp5+uploadify实现的文件上传功能示例
2018/05/26 PHP
比较简单实用的使用正则三种版本的js去空格处理方法
2007/11/18 Javascript
jQuery插件jPaginate实现无刷新分页
2015/05/04 Javascript
jquery通过扩展select控件实现支持enter或focus选择的方法
2015/11/19 Javascript
使用jQuery调用XML实现无刷新即时聊天
2016/08/07 Javascript
javascript中call,apply,bind函数用法示例
2016/12/19 Javascript
JavaScript字符串对象(string)基本用法示例
2017/01/18 Javascript
js实现产品缩略图效果
2017/03/10 Javascript
微信小程序实现动态改变view标签宽度和高度的方法【附demo源码下载】
2017/12/05 Javascript
基于Python实现一个简单的银行转账操作
2016/03/06 Python
Python装饰器实现几类验证功能做法实例
2017/05/18 Python
python机器学习之神经网络(一)
2017/12/20 Python
详谈pandas中agg函数和apply函数的区别
2018/04/20 Python
python tkinter canvas使用实例
2019/11/04 Python
win7上tensorflow2.2.0安装成功 引用DLL load failed时找不到指定模块 tensorflow has no attribute xxx 解决方法
2020/05/20 Python
matplotlib 生成的图像中无法显示中文字符的解决方法
2020/06/10 Python
美国性感内衣店:Yandy
2018/06/12 全球购物
雷曼兄弟的五金店:Lehman’s Hardware Store
2019/04/10 全球购物
荷兰天然和有机产品网上商城:BigGreenSmile.nl
2020/07/26 全球购物
空字符串(“”)和null的区别
2012/11/13 面试题
Java Servlet的主要功能和作用是什么
2014/02/14 面试题
汽车检测与维修专业求职信
2013/10/30 职场文书
入股协议书
2014/04/14 职场文书
节约用水标语
2014/06/11 职场文书
行政执法作风整顿剖析材料
2014/10/11 职场文书
最美乡村教师观后感
2015/06/11 职场文书
农村房屋租赁合同(范本)
2019/07/23 职场文书
Mysql 设置boolean类型的操作
2021/06/04 MySQL
python ansible自动化运维工具执行流程
2021/06/24 Python
python之django路由和视图案例教程
2021/07/26 Python