PySnooper

Github:https://github.com/lotapp/PySnooper

pip install pysnooper

使用:分析整个代码

@pysnooper.snoop()
def avg(args):
return sum(args) / len(args)

PS:调试代码片段

with pysnooper.snoop():
code
In [1]:
import functools
import pysnooper # 分析整个代码
@pysnooper.snoop()
def sum(args):
return functools.reduce(lambda x, y: x + y, args) def avg(args):
# return sum(args) / len(args)
sum_num = sum(args)
# 分析片段代码
with pysnooper.snoop():
avg_num = sum_num / len(args)
return avg_num
In [2]:
# 求和
sum(list(range(1, 101)))
 
Starting var:.. args = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, ... 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100]
12:21:19.846556 call 6 def sum(args):
12:21:19.847553 line 7 return functools.reduce(lambda x, y: x + y, args)
12:21:19.847553 return 7 return functools.reduce(lambda x, y: x + y, args)
Return value:.. 5050
Out[2]:
5050
In [3]:
# 平均值
avg(list(range(1, 101)))
 
Starting var:.. args = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, ... 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100]
12:21:19.940523 call 6 def sum(args):
12:21:19.941526 line 7 return functools.reduce(lambda x, y: x + y, args)
12:21:19.941526 return 7 return functools.reduce(lambda x, y: x + y, args)
Return value:.. 5050
New var:....... args = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, ... 89, 90, 91, 92, 93, 94, 95, 96, 97, 98, 99, 100]
New var:....... sum_num = 5050
12:21:19.942524 line 14 avg_num = sum_num / len(args)
Out[3]:
50.5
 

最新文章

  1. CentOS系统yum源使用报错:Error: Cannot retrieve repository metadata (repomd.xml) for repository: rpmforge.
  2. Unity中获取物体的子物体
  3. Winform以任意角度旋转PictureBox中的图片的方法
  4. java后台进程和线程优先级
  5. 利用curl抓取远程页面内容
  6. lunix机器的jdk安装
  7. 在chrome下安装Proxy SwitchySharp插件
  8. java链接mysql
  9. MVC+EF 的增删改查操作
  10. IOS使用C#预处理命令,多种SDK共存
  11. 树莓派.GPRS.短信接收器
  12. Beta版本敏捷冲刺每日报告——Day2
  13. css垂直居中方法总结
  14. linux shell通配符及if语句判断
  15. ES5 常用 语法(object Arrary 函数绑定this指向)
  16. PLSQL安装、PLSQL汉化、激活
  17. Ant 批量执行jmeter 脚本
  18. 使用Repeater控件实现三层嵌套以及分页效果
  19. ajax响应报文可以被浏览器缓存的必要条件
  20. webpack4 未设置mode会自动压缩

热门文章

  1. 安装openstack 时 遇见的一些问题及解决方法!
  2. 倍福TwinCAT(贝福Beckhoff)基础教程2.2 TwinCAT常见类型使用和转换_字符串
  3. 系统重装 Windows_VHD_辅助处理工具说明文档1
  4. ping百度不通的解决方案
  5. js 获取浏览器显示内容的宽度和高度
  6. 【Excle数据透视表】如何新建数据透视表样式
  7. 补充——a.extend(b) #合并列表——a.update(b) #把b字典的元素加入到a字典里面
  8. java中获取文件路径的几种方式
  9. 使Gallery时设置居左显示
  10. 支付宝开放平台 配置RSA(SHA1)密钥 OpenSSL配置公钥私钥对