17

手把手教:Pycharm如何打断点?

 3 years ago
source link: http://mp.weixin.qq.com/s?__biz=MzIzNTg3MDQyMQ%3D%3D&%3Bmid=2247487948&%3Bidx=2&%3Bsn=d192b8921d084cea3cc14bc40eeeff90
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

NnMJnaB.png!web

来源:

https://www.cnblogs.com/my_captain/p/9242640.html

一、python代码的调试方式

1. 使用print语句打印出来

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

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

下面我们来看一下如何打

二. 环境

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

三. 调试代码

1 __author__ = '小翟'

2

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

4

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

6

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

8

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

10

11 drink_price = {

12 "橙汁": 3.5,

13 "椰汁": 4,

14 "矿泉水": 2,

15 "早餐奶": 4.5

16 }

17

18 def auto_fanmaiji(money, drink_name):

19 if money <= 10:

20 for drink, price in drink_price.items():

21 if drink_name == drink:

22 if money > price:

23 print("请取出饮料: %s" % drink_name)

24 print("应找您%3.1f元" % (money - price))

25 elif money == price:

26 print("请取出饮料: %s" % drink_name)

27 else:

28 print("sorry, 您的金额不足以买:%s" % drink_name)

29 else:

30 continue

31 else:

32 print("sorry, 本机最大金额不能超过10元,请重试!")

33

34 auto_fanmaiji(7.3, "橙汁")

四. 打断点图解

NnMJnaB.png!web

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

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

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

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

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

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

7RFZZvJ.png!web

实例1:Step Over的效果

BZNbauy.png!web实例2:Step Into的效果

b6BVNzj.png!web

点击Step Into下一步

Q7FzAr6.png!web

点击Step Into下一步

6jaqqyf.png!web

点击Step Into下一步

nAFfimI.png!web实例3:Step Out的效果

NvYv6fy.png!web

参考文章

https://blog.csdn.net/lanchunhui/article/details/49514297

https://blog.csdn.net/huangfei711/article/details/51220382

恋习Python

3aYRBzB.png!web

关注恋习Python,Python都好练

推荐阅读:

哈工大、哈工程被美国禁用「工科神器」MATLAB!网友直呼:用Python代替吧?!

25 个常用 Matplotlib 图的 Python 代码,收藏收藏!

好文章,我 在看 :heart:


About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK