pycharm debug 断点调试心得分享
作者:SpiderLiH 发布时间:2022-11-12 05:10:06
记得自己学习的心得,为了自己以后调试方便些。
1.操作步骤:
1.1 添加断点
直接在标记处点击鼠标左键即可。(删除断点只需再点击断点处即可)
1.2 Debug下运行代码
如图所示:
点击这颗七星瓢虫
1.3 按照所需调试进行代码调试
2.Debug的调试方式如下所示:
2.1.show execution point (F10)
显示当前所有断点
2.2step over(F8)
单步调试。
若函数A内存在子函数a时,不会进入子函数a内执行单步调试,而是把子函数a当作一个整体,一步执行。
2.3step into(F7)
单步调试。
若函数A内存在子函数a时,会进入子函数a内执行单步调试。
2.4.step into my code(Alt + Shift +F7)
进入我的代码,进行单步调试,执行下一行但忽略libraries。
它和step into 的区别就是:
step into my code 是debug 只会在你写的代码内部一步步的执行,step into 虽然 也是一步步的执行,但是它会可能会进入系统函数内部执行,比如说,正则re等。
推荐使用:step into my code,如果你关心的是系统底层的执行逻辑,可以使用step into
2.5.force step into(Alt + Shift +F7)
执行下一行忽略lib和构造对象等
2.6.step out(Shift+F8)
当目前执行在子函数a中时,选择该调试操作可以直接跳出子函数a,而不用继续执行子函数a中的剩余代码。并返回上一层函数。
就是说直接跳出当前debug所在的函数内部,进入到下一个需要执行的语句
2.7.run to cursor(Alt +F9)
直接跳到下一个断点(从现在的断点跳到打的下一个断点处)
总结的说下 就是:
7进,8出,9跳
F7进入代码内部,F8从代码出来,F9切换到指定代码或者代码文件
补充:Pycharm无法debug调试,无法命中断点直接运行到结束
无法正常命中断点进入Debugger从而查看变量,控制台的显示如下:
可能是因为File -> Settings ->Build, Execution, Deployment -> Python Debugger 中选项PyQt compatible 选择了Auto,去掉勾就好了。
另外,考虑是否是文件名重名问题,自定义的Python文件名跟调用debugger相关模块的内置的文件名重名了?需要将你的Python文件名改一下。
最后实在不行,将项目中.idea配置文件夹删掉,重启Pycharm,新建一个python file试试。
(不过该项目原先的配置会失效,记得重新配置interpreter解释器和第一点中Python Debugger去掉PyQt compatible的Auto勾)(或者直接建新项目,试吧)
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。如有错误或未考虑完全的地方,望不吝赐教。
来源:https://blog.csdn.net/weixin_38819889/article/details/108685098
猜你喜欢
- 前言WSGI 有三个部分, 分别为服务器(server), 应用程序(application) 和中间件(middleware). 已经知道
- 原来的题目设想为界面视觉效果的统一性,但是“统一”这个词似乎有点敏感,怕触动萌点无数,而我也无意去设定一个什么什么的统一性来侃侃而谈,极为专
- 0x 00 返回值简介回顾下,上一节简单介绍了函数及其各种参数,其中也有简单介绍 print 和 return 的区别,print 仅仅是打
- 看到好几位博主通过对模块的各个击破学习python,我也效法一下,本篇说一下python中加密涉及到的模块。hashlibhashlib模块
- 目录前言示例文件文件编码空值日期错误函数映射方法1:直接使用labmda表达式方法二:使用自定义函数方法三:使用数值字典映射总结前言本文是给
- 地图这期文章我们一起来看看地图是如何绘制的,如何在地图里面添加数据进行多维度的展示,下面我们一起来感受一下地图的魅力吧!&ldquo
- 如下所示:import urllib.requestimport sysimport http.cookiejarimport urllib
- 在flask更新到1.0之后的版本,官方推荐使用flask run的方式运行程序,可是作为开发,如果没有了pycharm的断点调试,这可太难
- 无论是 DAO 还是 ADO 都有两种从 Recordset 对象中查询记录的方法: Find 方法和 Seek 方法。在这两种方法中可以让
- :hover是我们在CSS设计中最常运用的伪类之一,许多绚丽效果的实现离不开伪类:hover,比如我们常见的纯CSS菜单、相册效果等等。或许
- PIL基本功能介绍from PIL import Imagefrom PIL import ImageEnhanceimg = Image.
- SQL Server Extended Events(下面简称XEvent)是SQL Server 2008里新加的事件处理系统,用来取代S
- SQL Server 客户端配置工具用于配置客户端的工具(除基于DOS操作系统的客户端工具以外),以便使它们可以成功地和SQL Server
- 通过将身份认证令牌直接传给 API 服务器,可以避免使用 kubectl 代理,像这样:使用 grep/cut 方式:# 查看所有的集群,因
- 参考Tensorflow Machine Leanrning Cookbooktf.ConfigProto()主要的作用是配置tf.Sess
- Asp定时执行操作、Asp定时读取数据库(网页定时操作详解)'----------------------版权信息---------
- 一、爬虫的流程开始学习爬虫,我们必须了解爬虫的流程框架。在我看来爬虫的流程大概就是三步,即不论我们爬取的是什么数据,总是可以把爬虫的流程归纳
- 接收邮件import poplib,pdb,email,re,timefrom email import headerPOP_ADDR =
- 前言 获得图像的关键点后,可通过计算得到关键点的描述符。关键点描述符可用于图像的特征匹配。通常,在计算图A是否包含图B的特
- 本文讲述了python实现删除文件与目录的方法。分享给大家供大家参考。具体实现方法如下:os.remove(path)删除文件 path.