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基于win32ui模块创建弹出式菜单示例
May 09 Python
pycharm执行python时,填写参数的方法
Oct 29 Python
Python+OpenCV图片局部区域像素值处理详解
Jan 23 Python
Django重置migrations文件的方法步骤
May 01 Python
连接pandas以及数组转pandas的方法
Jun 28 Python
Flask框架路由和视图用法实例分析
Nov 07 Python
Python 实现判断图片格式并转换,将转换的图像存到生成的文件夹中
Jan 13 Python
Python 写了个新型冠状病毒疫情传播模拟程序
Feb 14 Python
python分别打包出32位和64位应用程序
Feb 18 Python
在Mac中PyCharm配置python Anaconda环境过程图解
Mar 11 Python
Django模板之基本的 for 循环 和 List内容的显示方式
Mar 31 Python
python xlwt模块的使用解析
Apr 13 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
php 修改zen-cart下单和付款流程以防止漏单
2010/03/08 PHP
php文件怎么打开 如何执行php文件
2011/12/21 PHP
PHP中__get()和__set()的用法实例详解
2013/06/04 PHP
PHP swfupload图片上传的实例代码
2013/09/30 PHP
php中的filesystem文件系统函数介绍及使用示例
2014/02/13 PHP
php的ajax简单实例
2014/02/27 PHP
PHP代码优化之成员变量获取速度对比
2014/02/28 PHP
提高网站信任度的技巧
2008/10/17 Javascript
JavaScript Date对象使用总结
2009/05/14 Javascript
基于jQuery实现复选框的全选 全不选 反选功能
2014/11/24 Javascript
jQuery简单实现日历的方法
2015/05/04 Javascript
简介JavaScript中strike()方法的使用
2015/06/08 Javascript
JS移动端/H5同时选择多张图片上传并使用canvas压缩图片
2017/06/20 Javascript
angular.js + require.js构建模块化单页面应用的方法步骤
2017/07/19 Javascript
理解javascript async的用法
2017/08/22 Javascript
vue实现仿淘宝结账页面实例代码
2017/11/08 Javascript
jQuery zTree搜索-关键字查询 递归无限层功能实现代码
2018/01/25 jQuery
微信小程序自定义toast的实现代码
2018/11/16 Javascript
three.js实现圆柱体
2018/12/30 Javascript
基于原生js实现九宫格算法代码实例
2020/07/03 Javascript
使用Python中的cookielib模拟登录网站
2015/04/09 Python
Python实现程序判断季节的代码示例
2019/01/28 Python
python读取Excel表格文件的方法
2019/09/02 Python
python循环嵌套的多种使用方法解析
2019/11/29 Python
Pandas对每个分组应用apply函数的实现
2020/12/13 Python
Pycharm制作搞怪弹窗的实现代码
2021/02/19 Python
Puma印度官网:德国运动品牌
2019/10/06 全球购物
棉花姑娘教学反思
2014/02/15 职场文书
年终总结会主持词
2014/03/25 职场文书
乡镇干部党的群众路线教育实践活动个人对照检查材料
2014/09/24 职场文书
2015年实习单位评语
2015/03/25 职场文书
放牛班的春天观后感
2015/06/01 职场文书
党支部半年考察意见
2015/06/01 职场文书
jQuery实现影院选座订座效果
2021/04/13 jQuery
详解redis在微服务领域的贡献
2021/10/16 Redis
把77A收信机改造成收音机
2022/04/05 无线电