python3.7调试的实例方法


Posted in Python onJuly 21, 2020

 PyCharm IDE 窗口布局

python3.7调试的实例方法

PyCharm 调试代码实例(这里我以自己的代码为例)

__author__ = 'lxm' 
#!/usr/bin/python
 import thread
 import time
 # Define a function for the thread
 def print_time( threadName, delay):    
    count = 0   
    while count <  5:       
    count += 1        
    print "%s: %s" % ( threadName, time.ctime(time.time()) ) 
def check_sum(threadName,valueA,valueB):    
    print "to calculate the sum of two number her"    
    result=sum(valueA,valueB)    
    print "the result is" ,result;
 def sum(valueA,valueB):   
    if valueA >0 and valueB>0:        
    return valueA+valueB 
def readFile(threadName, filename):   
    file = open(filename)    
    for line in file.xreadlines():        
    print line 
try:    
    thread.start_new_thread( print_time, ("Thread-1", 2, ) )   
    thread.start_new_thread( check_sum, ("Thread-2", 4,5, ) )    
    thread.start_new_thread( readFile, ("Thread-3","test.txt",)) 
except:    
    print "Error: unable to start thread"
 while 1:
 #   print "end"   
    pass

在调试之前通常需要设置断点,断点可以设置在循环或者条件判断的表达式处或者程序的关键点。设置断点的方法非常简单:在代码编辑框中将光标移动到需要设置断点的行,然后直接按 Ctrl+F8 或者选择菜单"Run"->"Toggle Line Break Point",更为直接的方法是双击代码编辑处左侧边缘,可以看到出现红色的小圆点。当调试开始的时候,当前正在执行的代码会直接显示为蓝色。下图中设置了三个断点,蓝色高亮显示的为正在执行的代码。

断点设置

表达式求值:在调试过程中有的时候需要追踪一些表达式的值来发现程序中的问题,Pycharm 支持表达式求值,可以通过选中该表达式,然后选择“Run”->”Evaluate Expression”,在出现的窗口中直接选择 Evaluate 便可以查看。

Pycharm同时提供了 Variables 和 Watches 窗口,其中调试步骤中所涉及的具体变量的值可以直接在 variable 一栏中查看。

变量查看

如果要动态的监测某个变量可以直接选中该变量并选择菜单”Run”->”Add Watch”添加到 watches 栏中。当调试进行到该变量所在的语句时,在该窗口中可以直接看到该变量的具体值。

知识点扩展:

对于 python 代码的调试我们通常都是使用 IDE 自带的调试功能。但是 IDE 提供的调试功能存在局限性,例如在测试服务器上调试代码,但是又不可能在测试服务器上安装 IDE 进行调试。这时我们就可以利用下面所讲解的三个工具进行调试。

零、准备调试代码

在讲解三个调试工具前,我们先编写待调试的代码。代码很简单,就是计算两个数的商。我们在编写代码的时候故意留下了除数为 0 的 bug。

def division(start, end):
 for i in range(start, end, -1):
  num1 = i
  num2 = i - 1
  result = num1 / num2
  print(result)


if __name__ == '__main__':
 division(10, 0)

到此这篇关于python3.7调试的实例方法的文章就介绍到这了,更多相关python3.7怎么调试内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python中文件遍历的两种方法
Jun 16 Python
Python实现Windows和Linux之间互相传输文件(文件夹)的方法
May 08 Python
Python网络编程之TCP套接字简单用法示例
Apr 09 Python
python 将list转成字符串,中间用符号分隔的方法
Oct 23 Python
Python学习笔记之自定义函数用法详解
Jun 08 Python
python爬虫爬取幽默笑话网站
Oct 24 Python
python连接PostgreSQL过程解析
Feb 09 Python
python使用自定义钉钉机器人的示例代码
Jun 24 Python
Pytorch mask-rcnn 实现细节分享
Jun 24 Python
通俗易懂了解Python装饰器原理
Sep 17 Python
一篇文章教你用python画动态爱心表白
Nov 22 Python
python unichr函数知识点总结
Dec 16 Python
python如何快速生成时间戳
Jul 21 #Python
OpenCV Python实现图像指定区域裁剪
Mar 12 #Python
openCV提取图像中的矩形区域
Jul 21 #Python
Python文件夹批处理操作代码实例
Jul 21 #Python
Python常用库Numpy进行矩阵运算详解
Jul 21 #Python
python按顺序重命名文件并分类转移到各个文件夹中的实现代码
Jul 21 #Python
Pandas的Apply函数具体使用
Jul 21 #Python
You might like
php目录管理函数小结
2008/09/10 PHP
PHP详解ASCII码对照表与字符转换
2011/12/05 PHP
封装ThinkPHP的一个文件上传方法实例
2014/10/31 PHP
nginx+thinkphp下解决不支持pathinfo模式
2015/07/01 PHP
Yii2分页的使用及其扩展方法详解
2016/05/23 PHP
ThinkPHP3.2.1图片验证码实现方法
2016/08/19 PHP
Javascript MD4
2006/12/20 Javascript
我也种棵OO树JXTree[js+css+xml]
2007/04/02 Javascript
JavaScript学习笔记(十七)js 优化
2010/02/04 Javascript
javascript模拟枚举的简单实例
2014/03/06 Javascript
JavaScript运行时库属性一览表
2014/03/14 Javascript
jQuery的animate函数学习记录
2014/08/08 Javascript
JS使用for循环遍历Table的所有单元格内容
2014/08/21 Javascript
浅谈angularJS 作用域
2015/07/05 Javascript
利用jQuery实现CheckBox全选/全不选/反选的简单代码
2016/05/31 Javascript
Javascript中常用的检测方法小结
2016/10/08 Javascript
BootStrap tab选项卡使用小结
2020/08/09 Javascript
vue实现可增删查改的成绩单
2016/10/27 Javascript
Javascript 引擎工作机制详解
2016/11/30 Javascript
微信小程序手势操作之单触摸点与多触摸点
2017/03/10 Javascript
详解vue的数据binding绑定原理
2017/04/12 Javascript
jQuery实现手机号正则验证输入及自动填充空格功能
2018/01/02 jQuery
bootstrap Table实现合并相同行
2019/07/19 Javascript
JS删除数组指定值常用方法详解
2020/06/04 Javascript
详解Webpack4多页应用打包方案
2020/07/16 Javascript
使用js和canvas实现时钟效果
2020/09/08 Javascript
Python中获取网页状态码的两个方法
2014/11/03 Python
Django项目使用CircleCI的方法示例
2019/07/14 Python
利用python-docx模块写批量生日邀请函
2019/08/26 Python
用ldap作为django后端用户登录验证的实现
2020/12/07 Python
受希腊女神灵感的晚礼服、鸡尾酒礼服和婚纱:THEIA
2018/04/15 全球购物
照片礼物和装饰:MyPhoto
2019/11/02 全球购物
潘多拉珠宝美国官方网站:Pandora US
2020/06/18 全球购物
公司给客户的感谢信
2015/01/23 职场文书
提档介绍信范文
2015/10/22 职场文书
粗暴解决CUDA out of memory的问题
2021/05/22 Python