Python之常用模块学习–PySnooper
PySnooper是一个第三方库,官方介绍说PySnooper is a poor man’s debugger。为什么这么说呢,因为平时我们调试Python代码的时候,一般都是在IDE中操作的,而且IDE一般都可以集成Python调试器,我们就可以在IDE中断点调试代码了。那么当我们没有调试器的时候,这个库就可以很方便的帮助我们调试我们的代码了。下面我们就去见识一下这个库吧。
一、安装
通过pip,conda或者其他工具安装PySnooper
1 | pip install PySnooper |
源码工具在github上
二、使用
1. 直接用于函数
就像一般的装饰器一样用于方法,运行过程中就会把方法中使用的变量的变化打印出来
1 | import pysnooper |
输出结果如下:
1 | 最大值是: 9 |
可以看出PySnooper会把变量i 和 m值的变化打印出来,并且执行到哪一步也是可以清楚的看到。
2. 用于函数局部
1 | import pysnooper |
输出结果如下:
1 | 最大值是: 9 |
可以看出来,只有在定义with pysnooper.snoop()了,上面的for循环的变量调试是没有被打印出来的。这样我们就可以指定我们要调试的部门代码了,不用所有的调试信息都显示出来,方便我们查阅。
3. 定义调试信息到文件
1 |
|
4. 高级用法
调试信息添加前缀,这样输出的信息前面就会添加前缀,方便在日志中追踪
1
去除调试信息中的时间戳,堆栈等信息
1
如果是多线程调用,那么添加线程信息就可以方便查看哪个线程在调用
1