转自: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 备份压缩传输

    # -*- coding:utf-8 -*-__author__ = 'colin' #!/usr/bin/env python#-*- coding:utf-8 -*-import os,comma ...

  2. IPFS:Filecoin和复制证明

    这篇文章主要来讲一下Filecoin协议里面的复制证明(Proof of Replication),由于协议涉及到很多概念,可能看起来有点晕乎乎的,小编尽量把复杂问题简单化 ,力求给大家做大普及IPF ...

  3. js正则《转载收藏》

    \:转义字符.'\\n'匹配\n ^:开始位置.'^[0-9]'匹配以数字开头的字符,可以匹配'88DC',不可匹配'DC88' $:结束位置.'[0-9]$'匹配以数字结尾的字符,可以匹配'ab12 ...

  4. Java-Integer源码分析

    除了两种浮点型,剩下的几种基本数据类型的包装类几乎都实现了常量池,有好处用数据的时候直接去拿,没有再去创建,坏处是在程序编译的时候就存入大量数据不管用不用到.下面是一篇很好的文章,很详细,转自:htt ...

  5. Vue中axios的使用技巧配置项详解

    使用axios首先要下载axios模块包 npm install axios --save 其次需要在使用的文件中引入 import axios from 'axios' 一.调用axios常见两种方 ...

  6. 【Darwin】 越狱后玩耍IPhone系统

    玩耍IOS系统 大家都知道IOS是自Mac OS修改而来的.而Mac OS和IOS的共同核心是Darwin,其基于FreeBSD发展而来,整体而言也是个类Unix系统.之前把自己的手机越狱之后正好开始 ...

  7. (转)关于 awk 的 pattern(模式)

    本文转自chinaunix http://bbs.chinaunix.net/thread-4246512-1-1.html   作者reyleon 我们知道, awk程序由一系列 pattern 以 ...

  8. 解决数据库mysql插入乱码问题

    当我们遇到mysql乱码问题的时候,一般要修改my.ini文件: 我遇到的是两个版本,一个是mysql5.5版本,另一个是mysql5.7 5.5的是在这个目录下面:C:\Program Files\ ...

  9. 基于php编写的新闻类爬虫,插入WordPress数据库

    这个爬虫写的比较久远,很久没有更新博客了. 1.首先思路是:通过php的curl_setopt()函数可以方便快捷的抓取网页. 2.什么样的新闻吸引人呢,当然的热点新闻了.这里选百度的搜索风云榜,获取 ...

  10. 通过软引用和弱引用提升JVM内存使用性能的方法(面试时找机会说出,一定能提升成功率)

    初学者或初级程序员在面试时如果能证明自己具有分析内存用量和内存调优的能力,这相当有利,因为这是针对5年左右相关经验的高级程序员的要求.而对于高级程序员来说,如果能在面试时让面试官感觉你确实做过内存调优 ...