python中调试或排错的五种方法示例

yipeiwu_com6年前Python基础

前言

本文主要给大家介绍了关于python中调试或排错的五种方法,分享出来供大家参考学习,下面话不多说了,来一起看看详细的的介绍吧

python调试或排错的五种方法

1、print,直接打印,比较简单而且粗暴

在代码中直接输入print+需要输出的结果,根据打印的内容判断即可

 2、assert断言,很方便,测试人员常常在写自动化用例的时候用的比较多

如下,直接将预期结果和实际结果做判断 

  def true_code():
 x = 3
 y = 2
 z = x + y
 assert(5==z), "z不等于5"

def false_code():
 x = 3
 y = 3
 z = x + y
 assert(5==z), "z不等于5"

true_code()
false_code()

运行结果如下:

3、pdb交互式源代码调试

常用命令:break或b  设置断点

   continue或c  继续执行程序,或跳到下个断点

    list或l  查看当前行的代码段

    step或s  进入函数

    return或r  执行代码知道从当前函数返回

       exit或q  中止并退出

       next或n  执行下一行

     p或!   打印变量的值例如a为变量,则输入p a

     help或h   帮助

在使用pdb时需要导入pdb库,然后在代码中需要的地方引入pdb代码片段,如下:  

 import pdb
 
 if __name__ == "__main__":
 a = 1
 pdb.set_trace() #创建pdb代码片段
 b = 2
 c = a + b
 print(c)

输入pdb命令,并且查看结果:

 

4、日志,定位问题记录程序运行情况

主要是引入logging库

logging模块提供了标准的日志接口,你可以通过它存储各种格式的日志,logging的日志可以分为  debug(), info(), warning(), error() and critical()5个级别,根据需要选择不同的级别打印日志

5、IDE Debuger 图形界面便于数据查看,支持多线程调试,远程调试

主要是IDE中自带的debug调试

设置断点,运行时以debug模式运行,或这shift+F9运行

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对【听图阁-专注于Python设计】的支持。

相关文章

Python sys.argv用法实例

sys.argv变量是一个字符串的列表。特别地,sys.argv包含了命令行参数 的列表,即使用命令行传递给你的程序的参数。 这里,当我们执行python using_sys.py we...

Python cookbook(字符串与文本)针对任意多的分隔符拆分字符串操作示例

本文实例讲述了Python针对任意多的分隔符拆分字符串操作。分享给大家供大家参考,具体如下: 问题:将分隔符(以及分隔符之间的空格)不一致的字符串拆分为不同的字段; 解决方案:使用更为灵...

Python基于pycrypto实现的AES加密和解密算法示例

本文实例讲述了Python基于pycrypto实现的AES加密和解密算法。分享给大家供大家参考,具体如下: 一 代码 # -*- coding: UTF-8 -*- import s...

使用python telnetlib批量备份交换机配置的方法

使用了telnetlib模块,首先登录到交换机,列出并获取配置文件的名称,然后通过tftp协议将配置文件传输到文件服务器上,为避免配置文件覆盖,将备份的配置文件名称统一加入日期以作区分。...

python 使用get_argument获取url query参数

python 使用get_argument获取url query参数 ornado的每个请求处理程序,我们叫做handler,handler里可以自定义自己的处理程序,其实也就是重写方法...