转自:http://www.cnblogs.com/wei-li/archive/2012/05/02/2479082.html

学习Python调试,最好的资料当然是官方文档和(pdb)help了,这里有篇博文,还有下面的 PDB cheat-sheet

1 在python中使用pdb模块可以进行调试
import pdb
pdb.set_trace()

2 也可以使用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)中执行叙述。

The python debugger(PDB)的简介的更多相关文章

  1. The Python Debugger Pdb

    Python Debugger pdb The Python Debugger Pdb 可以直接在命令行中启动,调试程序 也可以写在代码中 命令行使用 可以直接在命令行指定要进行调试的程序 pytho ...

  2. gdb可以调试python的pdb么

    1.如题: gdb可以调试python的pdb么? 答案:可以,实验如下. 2.实验: 生成一个a.py代码文件,代码如下: import pdb a = 1 print "111" ...

  3. Python 3.0(一) 简介

    Python 3.0(一) 简介 [目录] 1.简介 2.python特点 3.安装 简介: Python是可以称得上即简单又功能强大的少有的语言中的一种.你将会惊喜地发现,专注于问题的解决方案而不是 ...

  4. Python 调试 PDB

    出处:http://blog.163.com/gjx0619@126/blog/static/12740839320114995947700/ 完整 请参考:http://docs.python.or ...

  5. python 用pdb调试

    简单调试 Python 程序   在 Python 中也可以像 gcc/gdb 那样调试程序,只要在运行 Python 程序时引入 pdb 模块(假设要调试的程序名为 d.py): $ vi d.py ...

  6. Python 的 six模块简介

    Python 的 six模块简介 six : Six is a Python 2 and 3 compatibility library Six没有托管在Github上,而是托管在了Bitbucket ...

  7. python调试工具pdb

    pdb是基于命令行的调试工具,非常类似gnu的gdb(调试c/c++). 命令 简写命令 作用 break b 设置断点 continue c 继续执行程序 list l 查看当前行的代码段 step ...

  8. Python 各种测试框架简介(三):nose

    转载:https://blog.csdn.net/qq_15013233/article/details/52527260 摘要 这里将从(pythontesting.net)陆续编译四篇 Pytho ...

  9. Python爬虫教程-20-xml 简介

    本篇简单介绍 xml 在python爬虫方面的使用,想要具体学习 xml 可以到 w3school 查看 xml 文档 xml 文档链接:http://www.w3school.com.cn/xmld ...

随机推荐

  1. python爬微信公众号前10篇历史文章(5)-JSON相关内容小结

    json - JSON encoder and decoder JSON: JavaScript object notation,是一种轻量级的数据交换格式.JSON 是 JS 对象的字符串表示法,它 ...

  2. IPFS: BitSwap协议(数据块交换)

    原创 2018-01-11 飞向未来 IPFS指南 BitSwap协议 IPFS节点之间是如何进行数据交换的?本文来讲一下这个问题. IPFS在BitTorrent的基础上实现了p2p数据交换协议:B ...

  3. 用IDEA在Tomcat上部署项目

    其实每次在需要运行的jsp页面右键=>run也是可以运行的,但是会出现下面这样 正常应该Run==>Edit Con-- 这时候将看到这个页面,千万不要在Defaults中招Tomcat配 ...

  4. 斗地主案例(利用集合/增强for等技术)

    斗地主案例(利用集合/增强for等技术) package Task10; import java.util.ArrayList; import java.util.Collections; publi ...

  5. Mycat 注解说明

    我们知道MySQL 数据库有自己的SQL注解(hint),比如 use index.force index.ignore index 等都是会经常用到的,Mycat 作为一个数据库中间件,最重要的是 ...

  6. React简明学习

    前面的话 React让组件化成为了前端开发的基本思路,比传统思路可以更好的控制前端复杂度,旧的开发方法受到了影响,如分离式的HTML/CSS.非侵入式JS.模板语言.MVC.CSS文件.Bootstr ...

  7. Linux远程连接工具

    Linux远程连接可以使用SecureCRT工具完成 SecureCRT下载地址 修改虚拟机中的网络适配器---改为桥接模式 一,配置:在Linux终端上获取IP地址----ifconfig 二,同时 ...

  8. Tomcat8配置tomcat-users.xml配置

    默认tomcat-user.xml中的角色和用户配置示例如下: <!-- <role rolename="tomcat"/>  <role rolename ...

  9. WEB烟花效果——Canvas实现

    摘要        本文主要介绍一种WEB形式的烟花(fireworks)效果(图1所示),该效果基于Canvas实现,巧妙地运用了canvas绘图的特性,并加入了物理力作用的模拟,使整体效果非常绚丽 ...

  10. Leetcode 15——3Sum

    Given an array S of n integers, are there elements a, b, c in S such that a + b + c = 0? Find all un ...