这是「进击的Coder」的第 790 篇技术分享
作者:Ckend
来源:Python 实用宝典
“
阅读本文大概需要 4 分钟。
”![9b07e11ce10ca852114428a63b84704b.gif](https://i-blog.csdnimg.cn/blog_migrate/40f60fb0c679a83337c1b62356ef7aec.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](https://i-blog.csdnimg.cn/blog_migrate/a8f7e9822255162515df3f6da1e09a9d.png)
通过Heartrate,我可以很清楚地知道我的代码的瓶颈在哪:
![6d62e3f44dbd5527c7326d4c4d431326.png](https://i-blog.csdnimg.cn/blog_migrate/acd17b1b2e83ce331b6b0acb3e76d669.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!
End
崔庆才的新书《Python3网络爬虫开发实战(第二版)》已经正式上市了!书中详细介绍了零基础用 Python 开发爬虫的各方面知识,同时相比第一版新增了 JavaScript 逆向、Android 逆向、异步爬虫、深度学习、Kubernetes 相关内容,同时本书已经获得 Python 之父 Guido 的推荐,目前本书正在七折促销中!
内容介绍:《Python3网络爬虫开发实战(第二版)》内容介绍
扫码购买
好文和朋友一起看~