Python3,自从掌握了这个方法,再也不用print进行调试了。

简介: 有了这个方法, 还要什么print

1、引言


小屌丝:鱼哥,调试代码,除了Debug,还有什么其他的神器没?

小鱼:额… 你这是要飞天吗?

小屌丝:我很低调的好不好。

小鱼:还说低调,那你Debug咋都不用,还说低调?

小屌丝:我觉得Debug太慢了,

小鱼:…被你装到了。

小屌丝:反正我不管, 就得帮我想个神器…

小鱼:… 好吧, 容我想一下。

2000.jpg


小鱼:你别说,我还真的想到一个。

小屌丝:我擦…被你装到了, 我就知道你有货。

小鱼:低调, 我很低调的好不。

小屌丝:好吧,那你向我展示一下你说的神器。

小鱼:嘿嘿…

展示技术.png



2、代码实战


2.1 介绍


今天说到的这个神器,就是PySnooper,它的工作原理很简单,就是替代print的工作。

我们都知道, print一行, 则输出一行。

而PySnooper的功能就是把所有的一起输出。

2.2 安装


涉及到第三方库,肯定就需要安装

老规矩,pip 安装


pipinstallpysnooper


然后就是等待着安装。


其它安装方式,直接看这两篇:



安装完成,就是这样



2.3 示例


代码示例


# -*- coding:utf-8 -*-# @Time   : 2023-03-28# @Author : Carl_DJ'''实现功能:    使用PySnooper与with的上下文形式调试'''importpysnooperimportrandomdefDemo():
#设置listlist= []
foriinrange(10):
list.append(random.randrange(1,1000))
#使用with进行上下文调试withpysnooper.snoop():
lower=min(list)
upper=max(list)
mid= (lower+upper) /2print(lower,mid,upper)
#调用demoif__name__=='__main__':
Demo()





运行结果


21458.0895Sourcepath:...D:\Project\TestPySnooper.pyNewvar:.......list=[438,414,895,834,890,464,21,536,290,85]Newvar:.......i=915:14:58.320034line19lower=min(list)Newvar:.......lower=2115:14:58.320540line20upper=max(list)Newvar:.......upper=89515:14:58.320540line21mid=(lower+upper)/2Newvar:.......mid=458.015:14:58.320540line23print(lower,mid,upper)Elapsedtime:00:00:00.000506Processfinishedwithexitcode0



3、总结


看到这里,今天的分享内容就到这里了。

其实在实际工作中, 使用上下文调试的场景也很常见。

所以,学会使用PySnooper的with进行上下文调试, 能帮助你节省很多工作量。


好了,就唠叨这里了。

我是小鱼:


  • CSDN 博客专家;
  • 便宜云服务器 专家博主;
  • 51CTO博客专家;
  • 51认证讲师;
  • 金牌面试官;


关注小鱼,带你学习更多更有趣的python知识。


当然,


如果你想晋升自己的技能,;

如果你想提升自己的面试成功率;

如果你现在处在职业迷茫期,想重新规划职业生涯;

都可以找小鱼聊聊的。



目录
相关文章
|
18天前
|
Python
python简单分割文件的方法(python经典案例)
这篇文章介绍了两种使用Python进行文件分割的方法:通过读取指定字节数分割大文件成小文件,以及通过行数将文本文件分割成多个小文件。
38 1
|
16天前
|
移动开发 Python Windows
python编程获取网页标题title的几种方法及效果对比(源代码)
python编程获取网页标题title的几种方法及效果对比(源代码)
|
8天前
|
数据处理 Python
Python 高级技巧:深入解析读取 Excel 文件的多种方法
在数据分析中,从 Excel 文件读取数据是常见需求。本文介绍了使用 Python 的三个库:`pandas`、`openpyxl` 和 `xlrd` 来高效处理 Excel 文件的方法。`pandas` 提供了简洁的接口,而 `openpyxl` 和 `xlrd` 则针对不同版本的 Excel 文件格式提供了详细的数据读取和处理功能。此外,还介绍了如何处理复杂格式(如合并单元格)和进行性能优化(如分块读取)。通过这些技巧,可以轻松应对各种 Excel 数据处理任务。
36 16
|
3天前
|
存储 索引 Python
反转Python列表的4种方法
反转Python列表的4种方法
11 2
|
4天前
|
Python
深入解析 Python 中的对象创建与初始化:__new__ 与 __init__ 方法
深入解析 Python 中的对象创建与初始化:__new__ 与 __init__ 方法
12 1
|
15天前
|
Python
python方法,传参20220101 计算与当前时间差
python方法,传参20220101 计算与当前时间差
|
16天前
|
缓存 开发者 Python
Python指定行号读取文件的方法
这种方法的优势在于它的效率和简便性,特别是当需要从同一文件中读取多行时。`linecache`会缓存文件,减少了重复读取的开销。
18 4
|
15天前
|
存储 Python
Python中类方法、实例方法与静态方法的区别
这三种方法的正确使用可以使代码更加清晰、组织良好并且易于理解,从而有效地支持软件开发的面向对象编程范式。
13 1
|
17天前
|
Python
Python中的push方法详解与实例
Python中的push方法详解与实例
13 3
|
18天前
|
Python
python 类中的内置方法
python 类中的内置方法


http://www.vxiaotou.com