Python PyCharm如何进行断点调试


Posted in Python onJuly 05, 2019

编辑器不等于IDE(集成开发环境),开发python程序,不是只有一种print()打印输出调试。

术业有专攻,于人如此,于一个软件也是如此。让专业的软件做专业的事。

以上两点得出的结论:PyCharm

我们以如下的一种常见错误,来演示如何通过PyCharm断点追踪的方式发现程序中的错误:

def foo(bar=[]):
  bar.append('bar')
  return bar
>>>foo()
['bar']
>>>foo()
['bar', 'bar']
>>>foo()
['bar', 'bar', 'bar']

这里存在一个常见的错误就是误以为:函数在每次不提供可选形参时将参数设置为默认值,也就是本例中的[],一个空的list。

这里我们便可以通断点调试的方式进行追踪,在每次函数调用(不显示传递形参)时,观察形参值的变化。
如图所示为:

Python PyCharm如何进行断点调试 

下图是以这段为例,来演示如何发现程序中的bug:

Python PyCharm如何进行断点调试

解决方案:

def foo(bar=None):
  if not bar:
    bar = []
    bar.append('baz')
  return bar
>>>foo()
['baz']
>>>foo()
['baz']

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python数字图像处理之骨架提取与分水岭算法
Apr 27 Python
Python列表list排列组合操作示例
Dec 18 Python
用python生成(动态彩色)二维码的方法(使用myqr库实现)
Jun 24 Python
用Python实现将一张图片分成9宫格的示例
Jul 05 Python
对Django中内置的User模型实例详解
Aug 16 Python
tensorflow-gpu安装的常见问题及解决方案
Jan 20 Python
关于tf.reverse_sequence()简述
Jan 20 Python
解决Python logging模块无法正常输出日志的问题
Feb 21 Python
解决更改AUTH_USER_MODEL后出现的问题
May 14 Python
Python高并发解决方案实现过程详解
Jul 31 Python
python如何获得list或numpy数组中最大元素对应的索引
Nov 16 Python
Python urlopen()参数代码示例解析
Dec 10 Python
python 使用matplotlib 实现从文件中读取x,y坐标的可视化方法
Jul 04 #Python
Python计算一个点到所有点的欧式距离实现方法
Jul 04 #Python
python绘制已知点的坐标的直线实例
Jul 04 #Python
Python实现平行坐标图的两种方法小结
Jul 04 #Python
Python 图像处理: 生成二维高斯分布蒙版的实例
Jul 04 #Python
Django实现微信小程序的登录验证功能并维护登录态
Jul 04 #Python
libreoffice python 操作word及excel文档的方法
Jul 04 #Python
You might like
Linux+Nginx+MySQL下配置论坛程序Discuz的基本教程
2015/12/23 PHP
PHP实现删除多重数组对象属性并重新赋值的方法
2017/06/07 PHP
PhpStorm 如何优雅的调试Hyperf的方法步骤
2019/11/24 PHP
在IE6下发生Internet Explorer cannot open the Internet site错误
2010/06/21 Javascript
js中scrollHeight,scrollWidth,scrollLeft,scrolltop等差别介绍
2012/05/16 Javascript
jquery 实现两级导航菜单附效果图
2014/03/07 Javascript
js 实现浏览历史记录示例
2014/04/20 Javascript
使用jquery/js获取iframe父子级、同级获取元素的方法
2016/08/05 Javascript
Vue.js每天必学之表单控件绑定
2016/09/05 Javascript
各式各样的导航条效果css3结合jquery代码实现
2016/09/17 Javascript
JS检测是否可以访问公网服务器功能代码
2017/06/19 Javascript
详解webpack分离css单独打包
2017/06/21 Javascript
Angular4实现动态添加删除表单输入框功能
2017/08/11 Javascript
最全正则表达式总结:验证QQ号、手机号、Email、中文、邮编、身份证、IP地址等
2017/08/16 Javascript
解决layui checkbox 提交多个值的问题
2019/09/02 Javascript
Vue实现多标签选择器
2019/11/28 Javascript
Javascript操作select控件代码实例
2020/02/14 Javascript
Python如何判断数独是否合法
2016/09/08 Python
python编程嵌套函数实例代码
2018/02/11 Python
python如何使用unittest测试接口
2018/04/04 Python
Python根据指定日期计算后n天,前n天是哪一天的方法
2018/05/29 Python
用Python shell简化开发
2018/08/08 Python
selenium+python设置爬虫代理IP的方法
2018/11/29 Python
python 划分数据集为训练集和测试集的方法
2018/12/11 Python
Python骚操作之动态定义函数
2019/03/26 Python
python使用OpenCV模块实现图像的融合示例代码
2020/04/10 Python
sublime3之内网安装python插件Anaconda的流程
2020/11/10 Python
详解使用HTML5的classList属性操作CSS类
2017/10/13 HTML / CSS
英国知名小木屋定制网站:Tiger Sheds
2020/03/06 全球购物
体育教师工作总结的自我评价
2013/10/10 职场文书
《小山羊和小灰兔》教学反思
2014/02/19 职场文书
总经理的岗位职责
2014/02/23 职场文书
2014学校庆三八妇女节活动总结
2014/03/01 职场文书
档案管理员岗位职责
2015/02/12 职场文书
Python利用zhdate模块实现农历日期处理
2022/03/31 Python
python manim实现排序算法动画示例
2022/08/14 Python