pycharm debug 断点调试心得分享


Posted in Python onApril 16, 2021

记得自己学习的心得,为了自己以后调试方便些。

1.操作步骤:

1.1 添加断点

直接在标记处点击鼠标左键即可。(删除断点只需再点击断点处即可)

pycharm debug 断点调试心得分享

1.2 Debug下运行代码

如图所示:

点击这颗七星瓢虫

pycharm debug 断点调试心得分享

1.3 按照所需调试进行代码调试

pycharm debug 断点调试心得分享

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从而查看变量,控制台的显示如下:

pycharm debug 断点调试心得分享

可能是因为File -> Settings ->Build, Execution, Deployment -> Python Debugger 中选项PyQt compatible 选择了Auto,去掉勾就好了。

pycharm debug 断点调试心得分享

另外,考虑是否是文件名重名问题,自定义的Python文件名跟调用debugger相关模块的内置的文件名重名了?需要将你的Python文件名改一下。

最后实在不行,将项目中.idea配置文件夹删掉,重启Pycharm,新建一个python file试试。

(不过该项目原先的配置会失效,记得重新配置interpreter解释器和第一点中Python Debugger去掉PyQt compatible的Auto勾)(或者直接建新项目,试吧)

pycharm debug 断点调试心得分享

以上为个人经验,希望能给大家一个参考,也希望大家多多支持三水点靠木。如有错误或未考虑完全的地方,望不吝赐教。

Python 相关文章推荐
Python创建文件和追加文件内容实例
Oct 21 Python
Python输出PowerPoint(ppt)文件中全部文字信息的方法
Apr 28 Python
Python selenium 三种等待方式详解(必会)
Sep 15 Python
解决Python2.7读写文件中的中文乱码问题
Apr 12 Python
tensorflow 用矩阵运算替换for循环 用tf.tile而不写for的方法
Jul 27 Python
对python中的控制条件、循环和跳出详解
Jun 24 Python
python多线程同步实例教程
Aug 11 Python
Python如何计算语句执行时间
Nov 22 Python
Pycharm最新激活码2019(推荐)
Dec 31 Python
Python编程快速上手——强口令检测算法案例分析
Feb 29 Python
python新手学习可变和不可变对象
Jun 11 Python
Python+Appium实现自动化清理微信僵尸好友的方法
Feb 04 Python
Python通过m3u8文件下载合并ts视频的操作
Python实现Telnet自动连接检测密码的示例
AI:如何训练机器学习的模型
python 用递归实现通用爬虫解析器
MATLAB 如何求取离散点的曲率最大值
用Python远程登陆服务器的步骤
Matlab求解数组中的最大值及它所在的具体位置
Apr 16 #Python
You might like
苏联队长,苏联超人蝙蝠侠,这些登场的“山寨”英雄真的很严肃
2020/04/09 欧美动漫
PHP日期时间函数的高级应用技巧
2009/05/16 PHP
PHP的password_hash()使用实例
2014/03/17 PHP
解决laravel session失效的问题
2019/10/14 PHP
基于jquery的一个拖拽到指定区域内的效果
2011/09/21 Javascript
你必须知道的Javascript知识点之"深入理解作用域链"的介绍
2013/04/23 Javascript
让元素在网页中可拖动示例代码
2013/08/13 Javascript
innerText 使用示例
2014/01/23 Javascript
jQuery实现的多选框多级联动插件
2014/05/02 Javascript
jquery实现可拖拽弹出层特效
2015/01/04 Javascript
使用jQuery实现input数值增量和减量的方法
2015/01/24 Javascript
jQuery手机浏览器中拖拽动作的艰难性分析
2015/02/04 Javascript
js正则表达式注册页面表单验证
2016/10/11 Javascript
nodejs个人博客开发第六步 数据分页
2017/04/12 NodeJs
JavaScript 隐性类型转换步骤浅析
2018/03/15 Javascript
Vue 获取数组键名的方法
2018/06/21 Javascript
vue实现滑动到底部加载更多效果
2020/10/27 Javascript
如何实现vue的tree组件
2020/12/03 Vue.js
Python 随机生成中文验证码的实例代码
2013/03/20 Python
Python获取apk文件URL地址实例
2013/11/01 Python
Python random模块(获取随机数)常用方法和使用例子
2014/05/13 Python
使用Python脚本对Linux服务器进行监控的教程
2015/04/02 Python
在Mac OS上部署Nginx和FastCGI以及Flask框架的教程
2015/05/02 Python
Python实现随机漫步功能
2018/07/09 Python
python根据list重命名文件夹里的所有文件实例
2018/10/25 Python
python2与python3的print及字符串格式化小结
2018/11/30 Python
解决pyttsx3无法封装的问题
2018/12/24 Python
python 装饰器的基本使用
2021/01/13 Python
css3弹性盒模型实例介绍
2013/05/27 HTML / CSS
娇韵诗Clarins意大利官方网站:法国天然护肤品牌
2020/03/11 全球购物
诺思信科技(南京)有限公司.NET笔试题答案
2013/07/06 面试题
斯福泰克软件测试面试题
2015/02/16 面试题
如何将一个描述日期或日期/时间的字符串转换为一个Date对象
2015/10/13 面试题
教育实习生的自我评价分享
2013/11/21 职场文书
《桃花心木》教学反思
2014/02/17 职场文书
2016教师节感恩话语
2015/12/09 职场文书