使用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 相关文章推荐
如何搜索查找并解决Django相关的问题
Jun 30 Python
Python聚类算法之凝聚层次聚类实例分析
Nov 20 Python
在java中如何定义一个抽象属性示例详解
Aug 18 Python
python中列表和元组的区别
Dec 18 Python
python读取文本中数据并转化为DataFrame的实例
Apr 10 Python
详解Python解决抓取内容乱码问题(decode和encode解码)
Mar 29 Python
python中的decimal类型转换实例详解
Jun 26 Python
简单了解django索引的相关知识
Jul 17 Python
Python的Django框架实现数据库查询(不返回QuerySet的方法)
May 19 Python
Python实现EM算法实例代码
Oct 04 Python
Python命令行参数定义及需要注意的地方
Nov 30 Python
python 模块导入问题汇总
Feb 01 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程序--记数器
2006/10/09 PHP
精美漂亮的php分页类代码
2013/04/02 PHP
PHP基于SPL实现的迭代器模式示例
2018/04/22 PHP
Yii框架页面渲染操作实例详解
2019/07/19 PHP
些很实用且必用的小脚本代码
2006/06/26 Javascript
in.js 一个轻量级的JavaScript颗粒化模块加载和依赖关系管理解决方案
2011/07/26 Javascript
dojo学习第二天 ajax异步请求之绑定列表
2011/08/29 Javascript
JavaScript 用Node.js写Shell脚本[译]
2012/09/20 Javascript
JSON辅助格式化处理方法
2013/03/26 Javascript
extjs 3.31 TreeGrid实现静态页面加载json到TreeGrid里面
2013/04/02 Javascript
Javascript中3个需要注意的运算符
2015/04/02 Javascript
实现前后端数据交互方法汇总
2015/04/07 Javascript
Jquery中使用show()与hide()方法动画显示和隐藏图片
2015/10/08 Javascript
JavaScript开发者必备的10个Sublime Text插件
2016/02/27 Javascript
详解Bootstrap各式各样的按钮(推荐)
2016/12/13 Javascript
jQuery插件artDialog.js使用与关闭方法示例
2017/10/09 jQuery
用Vue写一个分页器的示例代码
2018/04/22 Javascript
微信小程序npm引入vant-weapp的踩坑记录
2019/08/01 Javascript
如何在vue中使用kindeditor富文本编辑器
2020/12/19 Vue.js
[02:34]肉山说——泡妞篇
2014/09/16 DOTA
为Python的web框架编写MVC配置来使其运行的教程
2015/04/30 Python
python实现可视化动态CPU性能监控
2018/06/21 Python
django框架模型层功能、组成与用法分析
2019/07/30 Python
pycharm创建scrapy项目教程及遇到的坑解析
2019/08/15 Python
python下载库的步骤方法
2019/10/12 Python
TensorFlow dataset.shuffle、batch、repeat的使用详解
2020/01/21 Python
Python项目打包成二进制的方法
2020/12/30 Python
HTML5 Web缓存和运用程序缓存(cookie,session)
2018/01/11 HTML / CSS
高一历史教学反思
2014/01/13 职场文书
清正廉洁演讲稿
2014/05/22 职场文书
优秀毕业生就业推荐信
2014/05/22 职场文书
2014中学教师节广播稿
2014/09/10 职场文书
2019 入党申请书范文
2019/07/10 职场文书
Nginx解决403 forbidden的完整步骤
2021/04/01 Servers
Redis延迟队列和分布式延迟队列的简答实现
2021/05/13 Redis
python脚本框架webpy模板控制结构
2021/11/20 Python