Pycharm如何打断点的方法步骤


Posted in Python onJune 13, 2019

一. python代码的调试方式

1. 使用print语句打印出来

2. 在编辑工具中,加断点跟踪(打断点)

3. 使用日志模块,输出到日志中

下面我们来看一下如何打断点

二. 环境

python 3.4.4 + Pycharm Professional Edition 2018.1,注意这里尽量用新的版本,能用专业版尽量用专业版,功能更丰富

三. 调试代码

__author__ = '小翟'

'''1、自动贩卖机: 只接受1元、5元、10元的纸币或硬币,最多不超过10块钱。

 饮料只有橙汁、椰汁、矿泉水、早餐奶,售价分别是3.5,4,2,4.5。

 写一个函数用来表示贩卖机的功能: 用户投钱和选择饮料,并通过判断之后,给用户吐出饮料和找零。

 说明:参数有一个为金额,此金额为输入的总金额。'''

drink_price = {
 "橙汁": 3.5,
 "椰汁": 4,
 "矿泉水": 2,
 "早餐奶": 4.5
}

def auto_fanmaiji(money, drink_name):
 if money <= 10:
  for drink, price in drink_price.items():
   if drink_name == drink:
    if money > price:
     print("请取出饮料: %s" % drink_name)
     print("应找您%3.1f元" % (money - price))
    elif money == price:
     print("请取出饮料: %s" % drink_name)
    else:
     print("sorry, 您的金额不足以买:%s" % drink_name)
   else:
    continue
 else:
  print("sorry, 本机最大金额不能超过10元,请重试!")

auto_fanmaiji(7.3, "橙汁")

四. 打断点图解

Pycharm如何打断点的方法步骤

五. Step Over, Step Into和Step Out的区别

Step Over:在单步执行时,在函数内遇到子函数时不会进入子函数内单步执行,而是将子函数整个执行完再停止,也就是把子函数整个作为一步

注意:在不存在子函数的情况下Step Over是和Step Into效果一样的

Step Into:单步执行,遇到子函数就进入并且继续单步执行(即进入子函数)

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

在第14行调用devide函数时打断点

Pycharm如何打断点的方法步骤

实例1:Step Over的效果

Pycharm如何打断点的方法步骤

实例2:Step Into的效果

Pycharm如何打断点的方法步骤

点击Step Into下一步

Pycharm如何打断点的方法步骤

点击Step Into下一步

Pycharm如何打断点的方法步骤

点击Step Into下一步

Pycharm如何打断点的方法步骤

实例3:Step Out的效果

Pycharm如何打断点的方法步骤

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

Python 相关文章推荐
Python中的迭代器漫谈
Feb 03 Python
Python探索之静态方法和类方法的区别详解
Oct 27 Python
Python爬虫常用小技巧之设置代理IP
Sep 13 Python
WIn10+Anaconda环境下安装PyTorch(避坑指南)
Jan 30 Python
快速解决pyqt5窗体关闭后子线程不同时退出的问题
Jun 19 Python
Python Websocket服务端通信的使用示例
Feb 25 Python
利用 Python ElementTree 生成 xml的实例
Mar 06 Python
tensorflow实现从.ckpt文件中读取任意变量
May 26 Python
浅谈Python协程
Jun 17 Python
python使用隐式循环快速求和的实现示例
Sep 11 Python
Python偏函数实现原理及应用
Nov 20 Python
Python四款GUI图形界面库介绍
Jun 05 Python
用pycharm开发django项目示例代码
Jun 13 #Python
pyqt5 实现工具栏文字图片同时显示
Jun 13 #Python
Python自动化运维之Ansible定义主机与组规则操作详解
Jun 13 #Python
pyqt 实现在Widgets中显示图片和文字的方法
Jun 13 #Python
详解PyCharm+QTDesigner+PyUIC使用教程
Jun 13 #Python
PyCharm+Qt Designer+PyUIC安装配置教程详解
Jun 13 #Python
python之pyqt5通过按钮改变Label的背景颜色方法
Jun 13 #Python
You might like
跟我学小偷程序之成功偷取首页(第三天)
2006/10/09 PHP
php读取msn上的用户信息类
2008/12/05 PHP
如何使用php输出时间格式
2013/08/31 PHP
thinkPHP交易详情查询功能详解
2016/12/02 PHP
用JSON做数据传输格式中的一些问题总结
2011/12/21 Javascript
js控制input框只读实现示例
2014/01/20 Javascript
JavaScript跨域方法汇总
2014/10/16 Javascript
jquery处理json对象
2014/11/03 Javascript
JavaScript事件委托用法分析
2015/01/24 Javascript
详解AngularJS Filter(过滤器)用法
2015/12/28 Javascript
JavaScript中获取HTML元素值的三种方法
2016/06/20 Javascript
jQuery中实现prop()函数控制多选框(全选,反选)
2016/08/19 Javascript
javascript中活灵活现的Array对象详解
2016/11/30 Javascript
js中new一个对象的过程
2017/02/20 Javascript
React-router中结合webpack实现按需加载实例
2017/05/25 Javascript
element-ui 设置菜单栏展开的方法
2018/08/22 Javascript
vue-路由精讲 二级路由和三级路由的作用
2020/08/06 Javascript
一文秒懂nodejs中的异步编程
2021/01/28 NodeJs
[49:54]Ti4 循环赛第三日 LGD vs Titan
2014/07/12 DOTA
python中pygame模块用法实例
2014/10/09 Python
Python自然语言处理 NLTK 库用法入门教程【经典】
2018/06/26 Python
python设定并获取socket超时时间的方法
2019/01/12 Python
Python函数基础实例详解【函数嵌套,命名空间,函数对象,闭包函数等】
2019/03/30 Python
图文详解python安装Scrapy框架步骤
2019/05/20 Python
Jacobi迭代算法的Python实现详解
2019/06/29 Python
在Pytorch中计算卷积方法的区别详解(conv2d的区别)
2020/01/03 Python
numpy库ndarray多维数组的维度变换方法(reshape、resize、swapaxes、flatten)
2020/04/28 Python
解决启动django,浏览器显示“服务器拒绝访问”的问题
2020/05/13 Python
什么是三层交换,说说和路由的区别在那里
2014/09/01 面试题
大学生求职简历的自我评价
2013/10/21 职场文书
质检部岗位职责
2013/11/11 职场文书
2014年乡镇工会工作总结
2014/12/02 职场文书
2015年“世界无车日”活动方案
2015/05/06 职场文书
员工旷工检讨书
2015/08/15 职场文书
社区结对共建协议书
2016/03/23 职场文书
为什么MySQL不建议使用SELECT *
2022/04/03 MySQL