python自带的调试工具库:pdb

# -*- coding:utf-8 -*-

def func(num):

s = num * 10

return s

if __name__ == '__main__':

print 'debug starting...'

print '*' * 10

print 'debug ending…'

num = 100

s = func(num)

print s

在python文件里不引用pdb库,能够在运行python文件的时候,加上參数:

python -m pdb demo.py

来到pdb调试交互界面,debug模式将会停止在的第一行程序代码行

能够运行例如以下命令,进行对应的操作:

b(or break):设置断点。设置函数:b demo.func;设置行数:b demo:14(行数)

n(or next):运行下一行:Step over,跳过

c(or continue):运行下一个断点,没有断点则到程序结束:Step filter

s(or step):进入函数,Step into,单步跳入

r(or return):跳出函数,Step return

l(or list):查看当前代码段

q(or quit):退出当前debug

p(or print):打印变量值

h(or help):查看帮助

cl(clear):清除全部节点

disable [bpnumber[bpnumber]]:将第num个断点失效。enable。失效第10个断点

enable [bpnumber[bpnumber]]:启用第num个断点,enable 10。启用第10个断点

w(where):打印堆栈信息

a(args):打印当前函数參数信息

当然我们也能够使用pdb库的函数,来实现对py的debug:

比方:我们能够使用pdb函数:set_trace()

def func(num):

s = num * 10

return s

if __name__ == '__main__':

print 'debug starting...'

print '*' * 10

pdb.set_trace()

print 'debug ending…'

num = 100

s = func(num)

print s

运行程序:python pdb_demo.py

此时意味着给程序设置断点行。将会自己主动执行至print ‘py ending...’停住,让开发人员继续触发接下来操作。这个操作是py其他参考py什么时候,只需设置一个断点优势。

版权声明:本文博客原创文章。博客,未经同意,不得转载。

linux可以生成pdb调试信息吗,Linux通过使用pdb简单调试python计划相关推荐

  1. C#报错:创建调试信息文件 ……obj\Debug\model.pdb: 拒绝访问

    错误:创建调试信息文件".......\obj\Debug\model.pdb"时发生错误 --"......\obj\Debug\model.pdb: 拒绝访问. 解决 ...

  2. GNU 工具链调试信息分离和挂载:支持 GDB 调试 RELEASE 版本程序

    GNU 工具链调试信息分离和挂载:支持 GDB 调试 RELEASE 版本程序 一般地,release 版本的程序都不带调试信息,无法使用 gdb 调试. GNU 编译工具链和二进制工具链做法如下: ...

  3. 在linux环境获取pcie卡信息,如何Linux下得到CPU、内存及PCI信息

    很多时候我们需要得到linux下面的硬件信息, 那么如何得到呢? 其实linux给出了多种途径 我们看一下每一个命令,以便得到最详细的信息 /* 二,硬件的查看 1,lspci 2,dmidecode ...

  4. linux获取触控板信息,关于linux:Linux-下通过命令行和脚本开关笔记本触控板和其他输入外设...

    应用xinput命令,能够查看和更改以后零碎的输出设施状态. xinput -list能够查看以后零碎存在的输出设施和其id $ xinput -list ⎡ Virtual core pointer ...

  5. linux如何生成tar文件内容,在Linux系统中创建tar.gz文件的方法及实例讲解

    本文介绍在Linux系统中创建tar.gz文件的方法,及实例讲解. 介绍 tar存档是一个文件,用于存储其他文件的集合,包括有关它们的信息,例如所有权.权限和时间戳. 在Linux操作系统中,可以使用 ...

  6. linux查看系统的版本信息失败,Linux - 查看系统的版本信息

    PropertyMetadata和UIPropertyMetadata的一点区别 使用UIPropertyMetadata写一个Brush的依赖属性. System.Windows.Applicati ...

  7. linux系统读sim卡信息,在Linux下使用串口读取SIM卡上的SMS消息使用C

    试图通过linux中的串口读取sms消息,从一张安装在华为3g USB调制解调器内的SIM卡读取.我必须在屏幕上显示一些短信之前执行脚本.有时它显示不寻常的字符.我想要做的就是使用AT命令,c和串行端 ...

  8. Linux清除旧硬盘raid信息,[转载]linux下清除硬盘里的RAID信息

    使用旧硬盘时,偶尔会碰到这样的情况:重装系统进入分区界面发现sda变成了/dev/mapper/pdc_bdgffccjfhp1(或者是其他硬盘带有raid信息),这是因为sda里带有raid信息,那 ...

  9. linux命令 重定向%3e,linux输出信息调试信息重定向

    在运行linux的时候有所有的调试信息可以分为三个部分 1.bootloader输出信息 U-Boot 1.3.2(Nov 19 2016 - 22:02:08) DRAM: 64 MB Flash: ...

最新文章

  1. 036_PageHeader页头
  2. ADO学习(一)基础理论
  3. Perl语言编程学习笔记2
  4. Android开发(六)——组件颜色Selector(Selector与Shape的基本用法 )
  5. eclipse打开文件所在目录
  6. Entity Framework加载相关实体——Explicit Loading
  7. C#开发笔记,点点细微,处处真情,记录开发中的难言之隐
  8. 【数据结构】二叉树的遍历及应用
  9. Linux内核调试的方式以及工具集锦
  10. C语言课后习题(12)
  11. Metasploit介绍
  12. php再次确认密码,Laravel6.2中用于用户登录的新密码确认流程详解
  13. 软件工程期末考试 AHNU
  14. Latex中插入超链接/网址
  15. 有量纲和无量纲是什么意思_为什么无线通信需要同步?
  16. shell脚本编写九九乘法表_Shell脚本:打印九九乘法表
  17. kali linux 账号管理
  18. PHP 实现精确统计在线人数功能
  19. SDU信息门户(8)组队和文件系统分析
  20. vanish_3.0_ban

热门文章

  1. c#下各种数据库操作的封装!(支持ACCESS,SQLSERVER,DB2,ORACLE,MYSQL)(二)
  2. Oracle数据文件的备份与恢复
  3. 2440 休眠唤醒的实现过程(作者:wogoyixikexie@gliet)
  4. linux故障排除与修复(troubleshooting)
  5. Spark job stage task个数的计算方式
  6. Linux文件系统的类型及日志文件系统和非日志文件系统的区别
  7. Maven搭建JavaFX项目
  8. linux修改open files:ulimit、file-max
  9. JVM指令:invokeSpecial/invokeVirtual/invokeStatic/invokeInterface/invokeDynamic方法调用指令
  10. 【视频】vue指令之v-else-if