python调试的几种方式
python作为一种脚本语言,很多时候我们习惯于它的简洁,习惯于它的修改就能看到结果的特性。对于python的调试,有很多种方式,今天我们就来简单介绍下。
对于脚本语言,调试最简单的方式就是打印输出,而print函数就可以输出各种类型变量,配合着格式化输出,我们可以打印出程序运行过程中各个变量的状态值。
使用这种方式的好处是我们不需要引入其它包,我们只需要使用简单的print就可以调试我们的程序,当然,它的缺点也很明显,有时候为了调试一些变量,我们不得不写很多print语句,而且有时候为了更优雅地显示数据,我们不得不写很多代码。
Icecream
这是一个调试输出插件,相比于print函数,它可以自动优雅地输出各种变量类型,它会输出变量的位置,它可以输出函数的值,它还可以将值输出写入日志中。
通过引入icecream包,我们就可以在程序中更加简单地优雅地输出调试变量和函数的值,但是它和print函数一样,没有解决调试的侵入性问题,会产生调试代码。
PySnooper
前面我们提到了print和icecream都会产生调试代码,当调试结束之后我们还需要删除它们,那么有没有一种非侵入式地调试方式呢,答案是肯定的,那就是pysnooper。
pysnooper通过使用装饰器,可以非侵入式地调试代码,并且它输出的信息很详细,我们可以清楚地看到函数的调用层级,可以清楚地看到变量值的变化过程。并且它是支持调试信息的输出位置配置,默认是在控制台输出,当然,我们也可以在日志中输出调试。
pdb
我们知道调试c语言的时候有gdb,而调试python的时候,我们有pdb,它和gdb而很类似,我们可以进行断点设置,可以进行逐行调试,可以进入断点,可以设置修改变量值,配合着IDE,可以说pdb是我们最常用的,也是最方便的调试方法。
通过设置断点,我们完全不需要写任何代码就可以查看运行中变量的值,通过逐行调试,也有助于我们分析代码。
总结
无论何种调试方式,选择一个适合自己的最重要,毕竟把代码写好才是最重要的。
以上内容为大家介绍了python调试的几种方式,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注IT培训机构:千锋教育。http://www.mobiletrain.org/
猜你喜欢LIKE
相关推荐HOT
python gensim库是什么?
pythongensim库是什么?gensim库在文本监控里,首先在稳定上,坚如磐石,不用担心稳定性问题,其次,时效性很强,执行能力很快,经常在最重要的...详情>>
2023-11-06 21:48:19python中getattr()是什么?
python中getattr()是什么?本文教程操作环境:windows7系统、Python3.9.1,DELLG3电脑。1、getattr()用来获取对象中的属性值;获取对象object的属...详情>>
2023-11-06 21:41:07python标识符如何使用?
python标识符如何使用?为了给编程中函数、类等进行区分,会赋予它们不同的名称。我们把这种命名叫做标识符,也可以理解为符号的标记。当然这种...详情>>
2023-11-06 21:33:55Python IDE之Thonny的介绍
pythonIDE之Thonny的介绍今天要介绍的IDE,可能没用过,甚至可能没听说过。叫Thonny,是塔尔图大学开发的,适合程序员新手。它的界面很容易使用...详情>>
2023-11-06 20:54:19热门推荐
如何使用python中的help函数?
沸如何使用python的callable函数?
热python gensim库是什么?
热python中xluntils库是什么?
新python中getattr()是什么?
python中的win32com库是什么?
python标识符如何使用?
如何使用python中schedule模块?
python中ruamel.yaml模块是什么?
defaultdict在python中计算键值的和
python sleep和wait对比分析
python中字符串转成数字的几种方法
python中SocketServer是什么?
python中如何使用@contextmanage?