美图齐众专注资阳网站设计 资阳网站制作 资阳网站建设
资阳网站建设公司服务热线:028-86922220

网站建设知识

十年网站开发经验 + 多家企业客户 + 靠谱的建站团队

量身定制 + 运营维护+专业推广+无忧售后,网站问题一站解决

一行代码搞定Python逐行内存消耗分析

memory_profiler的使用方法超级简单,使用pip install memory_profiler完成安装后,只需要从memory_profiler导入profile并作为要分析的目标函数的装饰器即可,譬如下面这个例子:

创新互联建站专注于企业全网营销推广、网站重做改版、岱山网站定制设计、自适应品牌网站建设、HTML5商城开发、集团公司官网建设、成都外贸网站建设公司、高端网站制作、响应式网页设计等建站业务,价格优惠性价比高,为岱山等各大城市提供网站开发制作服务。

demo.py

import numpy as np
from memory_profiler import profile

@profile
def demo():
a = np.random.rand(10000000)
b = np.random.rand(10000000)

a_ = a[a < b]
b_ = b[a < b]

del a, b

return a_, b_


if __name__ == '__main__':
demo()

接着在终端执行python demo.py,稍事等待后,就会看到打印出的分析结果报告(这里我是在jupyter lab里执行的终端命令):

其中Line #列记录了分析的各行代码具体行位置,Mem usage列记录了当程序执行到该行时,当前进程占用内存的量,Increment记录了当前行相比上一行内存消耗的变化量,Occurrences记录了当前行的执行次数(循环、列表推导等代码行会记作多次),Line Contents列则记录了具体对应的行代码。

通过这样细致的内存分析结果,我们就能有的放矢地优化我们的代码啦~


网站名称:一行代码搞定Python逐行内存消耗分析
当前链接:http://www.zsjierui.cn/article/dpecggg.html

其他资讯