加入收藏 | 设为首页 | 会员中心 | 我要投稿 百科站长网 (https://www.baikewang.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > Asp教程 > 正文

Python 调试器 pdb

发布时间:2022-12-05 12:42:06 所属栏目:Asp教程 来源:
导读:  如何调试 Python 程序?

  使用 PyCharm 等 IDE ,我们可以使用它自带的调试工具,具体可以看《 新手入门:PyCharm 的使用 》的 5.4 节。

  如果没有安装 IDE,或者不方便使用 IDE ,比如在服务器上
  如何调试 Python 程序?
 
  使用 PyCharm 等 IDE ,我们可以使用它自带的调试工具,具体可以看《 新手入门:PyCharm 的使用 》的 5.4 节。
 
  如果没有安装 IDE,或者不方便使用 IDE ,比如在服务器上运行程序,我们可能会写 print 语句输出变量,但 Python 自带的 Debug 工具比 print 更方便,它就是 pdb。
 
  首先附上官方文档 pdb,然后介绍几个常用方法。
 
  1. 引用
 
  作为脚本在命令行调试:
 
  python3 -m pdb myscript.py
  作为模块在 Python 文件引用
 
  import pdb
  pdb.set_trace() # 写在需要打断点的地方
  ?
  # 或者
  ?
  from pdb import set_trace as pause
  pause() # 写在需要打断点的地方
  如下图所示,当命令行出现 (pdb)asp调试器,说明已经正确打开了 pdb,接下来可以利用 pdb 进行调试了。
 
  不过上面两种方法的区别是:
 
  输入 h,可以查看相关命令,接下来介绍几个最常用的命令。
 
  asp调试器_asp.net mvc 断点调试_vs2008调试asp
 
  2. 变量函数
 
  我们调试往往需要查看变量和函数值:
 
  p expression # 输出 expression 的值,print 的格式
  pp expression # 输出 expression 的值,pprint 的格式
  whatis expression # 输出 expression 的变量类型
  ?
  a 或 args # 输出当前函数的参数列表
  3. 断点设置
 
  除了在 python 文件中写断点语句,我们还可以设置断点和临时断点,临时断点执行一次后时自动删除
 
  # 添加断点
  b
  b lineno # lineno 行号
  b filename:lineno # filename 文件名 xx.py
  b functionname # functionname 函数名
  ?
  # 添加临时断点
  tbreak
  tbreak lineno
  tbreak filename:lineno
  tbreak functionname
  ?
  # 删除断点
  # 不带参数清除所有断点,会提示确认(包括临时断点)
  cl
  # 不带参数清除所有断点,会提示确认(包括临时断点)
  cl filename:lineno
  cl bpnumber [bpnumber ...] # bpnumber 是断点序号,多个以空格分开
  4. 调试
 
  调试功能 PyCharm 也有,但要区分几个命令的区别:
 
  s 或 step # 执行下一行,进入函数体
  n 或 next # 执行下一行,不进入函数体
  ?
  r 或 return # 执行代码直到从当前函数返回
  c 或 cont 或 continue # 执行代码直到下一断点
  ?
  unt(il) lineno # 一直执行到指定行号 lineno 的位置,或遇到断点
  j(ump) lineno # 直接执行指定行号 lineno 的语句,会跳过中间的语句
  我常用的是 n 和 c
 
  5. 源代码
 
  查看当前代码:
 
  l 或 list # 查看当前行前后 11 行的源代码,当前行用箭头->指明
  ll # 查看整个源代码
  6. 退出调试
 
  q 或 exit
 

(编辑:百科站长网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!