IDEA与PyCharm的Debug调试指南

简介: 笔记

IDEA中Debug调试


Debug用来追踪代码的运行流程,通常在程序运行过程中出现异常,启用Debug模式可以分析定位异常发生的位置,以及在运行过程中参数的变化。通常我们也可以启用Debug模式来跟踪代码的运行流程去学习三方框架的源码。

20.png

按钮从左到右依次解释:


Show Execution Point :如果你的光标在其它行或其它页面,点击这个按钮可跳转到当前代码执行的行。

Step Over :步过,一行一行地往下走,如果这一行上有方法不会进入方法。

Step Into :步入,如果当前行有方法,可以进入方法内部,一般用于进入自定义方法内,不会进入官方类库的方法。

Force Step Into :强制步入,能进入任何方法,查看底层源码的时候可以用这个进入官方类库的方法。

Step Out :步出,从步入的方法内退出到方法调用处,此时方法已执行完毕,只是还没有完成赋值。

Drop Frame :回退断点

Run to Cursor :运行到光标处,你可以将光标定位到你需要查看的那一行,然后使用这个功能,代码会运行至光标行,而不需要打断点。


21.png


PyCharm中Debug调试


断点调试是在开发过程中常用的功能,能清楚看到代码运行的过程,有利于代码问题跟踪,pycharm打断点很简单,在代码行号后空白槽点击一下,出现红球,就可以了。当Pycharm运行到该行代码时会将程序暂时挂起,通过debug相关功能就可以进行调试了。

debug相关功能:


22.png

Step Over:在单步执行时,在函数内遇到子函数时不会进入子函数内单步执行,而是将子函数整个执行完再停止,也就是把子函数整个作为一步。有一点,经过我们简单的调试,在不存在子函数的情况下是和Step Into效果一样的(简而言之,越过子函数,但子函数会执行)。

Step Into:单步执行,遇到子函数就进入并且继续单步执行(简而言之,进入子函数)。

Step Into My Code:进入自己编写的函数,不进入系统函数,很少用到。

Force Step Into:强制进入,在调试的时候能进入任何方法。

Step Out:当单步执行到子函数内时,用Step Out就可以执行完子函数余下部分,并返回到上一层函数。

Run to Cursor:一直执行,到光标处停止,用在循环内部时,点击一次就执行一个循环。

演示:

23.png24.png25.png



总结:

1.先运行代码,看报错信息

2.在报错信息之前设置断点

3.进行调试,查看调试信息

4.修复bug


相关文章
|
3月前
|
Java 开发工具
【开发工具】IDEA-DeBug 调试模式使用
【1月更文挑战第20天】【开发工具】IDEA-DeBug 调试模式使用
|
3月前
|
Python
pycharm使用debug的时候遇到断点不停的问题
pycharm使用debug的时候遇到断点不停的问题
98 0
|
15天前
|
NoSQL 关系型数据库 MySQL
开发者福音:用IDEA和Iedis2加速Redis开发与调试
开发者福音:用IDEA和Iedis2加速Redis开发与调试
32 0
开发者福音:用IDEA和Iedis2加速Redis开发与调试
|
27天前
|
Kubernetes Ubuntu Linux
通过 IntelliJ IDEA 对 containerd 进行源码级调试
本文介绍如何在 Ubuntu 22.04 系统上,通过 IntelliJ IDEA 对 containerd 进行源码级调试。我们将从 containerd 的安装、源码编译、验证调试信息的存在,到最终的调试过程中,每一步骤都进行详细讲解。
通过 IntelliJ IDEA 对 containerd 进行源码级调试
|
30天前
IDEA远程调试Remote Debug
IDEA远程调试Remote Debug
14 0
|
1月前
|
关系型数据库 MySQL Java
IDEA+Mysql调试常见异常解决办法_kaic
IDEA+Mysql调试常见异常解决办法_kaic
|
2月前
|
开发工具
IDEA调试接口
IDEA调试接口操作方法
|
3月前
|
监控 应用服务中间件
idea debug模式启动Tomcat报错:Error running ‘tomcat8‘: java.net.SocketException “socket closed“
idea debug模式启动Tomcat报错:Error running ‘tomcat8‘: java.net.SocketException “socket closed“
|
4月前
|
前端开发 JavaScript
idea 对JavaScript进行debug调试
idea 对JavaScript进行debug调试
|
4月前
|
监控 IDE Java
工作四年,我学会了用 Idea本地调试线上服务器代码
工作四年,我学会了用 Idea本地调试线上服务器代码
54 0
工作四年,我学会了用 Idea本地调试线上服务器代码