神奇!这个模块能像观察心率一样观察 Python 代码性能表现

这是「进击的Coder」的第 790 篇技术分享

作者:Ckend

来源:Python 实用宝典

阅读本文大概需要 4 分钟。

9b07e11ce10ca852114428a63b84704b.gif

这个神奇的模块能让你实时可视化地观察 Python 程序执行时每一行代码的性能表现。

左边的数字是每行被击中的次数。条形显示最近被击中的次数,较长的条意味着其被击中的次数更多。

颜色的深浅代表着命中的时间与当前时间的距离,颜色越浅代表离当前时间越近。

下面就来教大家怎么用这个模块来观察你的代码性能表现。

1.准备

开始之前,你要确保 Python 和 pip 已经成功安装在电脑上。

请选择以下任一种方式输入命令安装依赖
1. Windows 环境 打开 Cmd (开始-运行-CMD)。
2. MacOS 环境 打开 Terminal (command+ 空格输入 Terminal)。
3. 如果你用的是 VSCode 编辑器或 Pycharm,可以直接使用界面下方的 Terminal.

pip install --user heartrate

支持 Python3.5 及以上版本。

2.基本使用

这个模块用起来超级简单,你只需要在代码里添加下面这两行语句即可:

import heartrate
heartrate.trace(browser=True)

然后打开浏览器窗口,访问:127.0.0.1:9999

就能看到相关的代码性能表现:

0143990eafdc1319509a9ea9bcabc82a.png

通过Heartrate,我可以很清楚地知道我的代码的瓶颈在哪:

6d62e3f44dbd5527c7326d4c4d431326.png

左边柱子越长,说明命中次数越多。

白色柱子越频繁出现,说明该行语句存在非常影响性能的问题。

3.高级用法

除了追踪启动 Heartrate 程序的文件代码之外,Heartrate 还能追踪其他文件的运行情况,如果你的文件引入了其他文件下的函数,它也能一起追踪:

from heartrate import trace, files
trace(files=files.path_contains('my_app', 'my_library'))

你只需要这么调用即可追踪其他路径下的文件的代码执行情况。

如果你想追踪全部文件:

from heartrate import trace, files
trace(files=files.all)

这么写即可一劳永逸,不过不建议在生产环境这么用,最好是只用于性能测试。

如果你的代码有性能瓶颈,而你又找不到问题出在哪。那么就快去试一下 heartrate,检测到底是哪一行代码出了问题并优化你的代码吧!

我们的文章到此就结束啦,我们下期再见,Respect!

9236bd09a19afa0617e95b3780e47120.png

End

崔庆才的新书《Python3网络爬虫开发实战(第二版)》已经正式上市了!书中详细介绍了零基础用 Python 开发爬虫的各方面知识,同时相比第一版新增了 JavaScript 逆向、Android 逆向、异步爬虫、深度学习、Kubernetes 相关内容,‍同时本书已经获得 Python 之父 Guido 的推荐,目前本书正在七折促销中!

内容介绍:《Python3网络爬虫开发实战(第二版)》内容介绍

5bac28643b2ce85e787a744a6b599700.jpeg

扫码购买

c9f4724ca209154a94c2b9969649e009.png

好文和朋友一起看~

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值