python代码执行中,有时我们遇到了错误,但不确定具体是什么位置出现错误,这是我们希望能够进行一步步调试确认,下文教你如何进行调试工作

工具/原料

  • python

方法1

  1. 1

    使用python自带工具pdb进行调试,python -m pdb xxx.py进入调试模式,这个比较类似于c++的gdb调试,具体调试命令如下

  2. 2

    以下介绍下比较常用的几个命令,首先是b设置断点命令,进入调试模式输入b xx(xx为行数),之后输入c指令执行代码,在xx行中断

  3. 3

    n命令单步执行,不会进入函数内部,图片中可以看出只是执行了test(5)这条命令

  4. 4

    s命令单步执行,会进入函数内部,图片中可以看出进入了test函数内部进行单步执行

  5. 5

    指令a是打印出当前函数的参数值,你要执行到函数位置再打印出参数值

  6. 6

    指令j 是跳转到某一行执行有点类似b和c指令结合,具体使用j xx(xx为行数)

  7. 7

    指令q,退出pdb调试模式

    END

方法2

  1. 你也可以直接带代码中添加pdb,在代码指定位置设置上断点

  2. 2

    执行后会到断点位置调出pdb

python怎么调试相关推荐

  1. 转:Python 代码调试技巧

    Python 代码调试技巧 转载于:https://www.cnblogs.com/kira2will/p/4254754.html

  2. python可以调试吗_调试-有什么好的方法可以使我的Python代码首次运行?

    调试-有什么好的方法可以使我的Python代码首次运行? 我的代码中出现了很多错误. 因此,我希望能够在一开始就将它们最小化,或者在执行代码之前看到尽可能多的错误. 这可能吗,如果可以,我该怎么做? ...

  3. 在ubunut下使用pycharm和eclipse进行python远程调试

    我比较喜欢Pycharm,因为这个是JetBrains公司出的python IDE工具,该公司下的java IDE工具--IDEA,无论从界面还是操作上都甩eclipse几条街,但项目组里有些人使用e ...

  4. python pdb调试基本命令整理

    python pdb调试基本命令整理 使用简介 启动调试 侵入式 在 py 文件内部设置: import pdb; pdb.set_trace() 程序会在运行到这一行时停下来,进入 pdb 交互. ...

  5. python pdb调试快捷键_python pdb调试以及sublime3快捷键设置

    python pdb调试以及sublime3快捷键设置 pdb调试 如果对gdb比较熟悉的话,pdb就很容易上手.以一个demo快速了解常用的调试命令. def test(a): while True ...

  6. python断点调试出现问题_Python错误、调试

    1.错误处理 使用try except finally try: i= 10/0exceptZeroDivisionError, e:print "ZeroDivisionError&quo ...

  7. vscode python 远程调试_vscode 远程调试python的方法

    vscode 远程调试python的方法 发布时间:2019-10-14 15:32 来源:互联网 当前栏目:web技术类 本文介绍了vscode 远程调试python的方法,分享给大家,具有如下: ...

  8. python可以调试吗_python调试的几种方法

    第一种方法简单直接粗暴有效,就是用print把可能有问题的变量打印出来看看: # err.py def foo(s): n = int(s) print '>>> n = %d' % ...

  9. python程序-调试Python程序代码的几种方法总结

    程序能一次写完并正常运行的概率很小,基本不超过1%.总会有各种各样的bug需要修正.有的bug很简单,看看错误信息就知道,有的bug很复杂,我们需要知道出错时,哪些变量的值是正确的,哪些变量的值是错误 ...

  10. 最完整的Python pdb调试用法

    pdb - Python 的调试器 源代码: Lib/pdb.py 先来重点干货,常用命令 转自 https://juejin.cn/post/6844903847626801159 先简单介绍一下使 ...

最新文章

  1. 解题报告:luoguP1462 通往奥格瑞玛的道路(二分、最短路)
  2. 如何克隆到非空目录?
  3. Mysql中的增删改查操作
  4. 删除数据库中所有存储过程和函数的sql语句
  5. oracle 全局搜索字符串,oracle操作字符串:拼接、替换、截取、查找 _ 学编程-免费技术教程分享平台...
  6. 17年,寻找出路的一年
  7. day4:单用户及救援模式及互相登录
  8. 中文字体的英文名称 (simhei, simsun) 宋体 微软雅黑
  9. ArcGIS土壤稳定性评估(附练习数据下载)
  10. 车牌识别算法实现及其代码实现之三:车牌识别
  11. AD20中添加3D封装模型库
  12. 悉尼大学计算机专业本科2019,2019悉尼大学申请条件
  13. QX2601液晶手写板擦写板专用IC芯片
  14. Manjaro安装与基本配置
  15. PHP 合成图片并在图片上加文字
  16. 案例 | 巴别鸟助推WE+管理入驻企业文档资料
  17. 工单服务管理系统开发
  18. Anaconda 安装及验证是否安装成功
  19. kl-scroll-text (文字滚动)
  20. 根据身份证地址拆分省市区

热门文章

  1. 数据库乐观锁和悲观锁的理解
  2. MAC上搭建Windows Phone 8 开发环境——VMware Fusion下Win8 “无法安装Hyper-V, 某个虚拟机监控程序正在运行”问题解决的办法
  3. Mac端git新增项目
  4. 科大讯飞版ChatGPT开始内测《讯飞星火》
  5. java中next()和nextline()用法区别
  6. 信号类型(雷达+通信)
  7. JDK1.8配置环境变量
  8. AndroidStudio 混淆打包
  9. 【千奇百怪】java自定义spotbugs检测器
  10. IEnumerable与IQueryable