python监视代码的内存消耗模块Memory Profiler使用及TypeError: 'module' object is not callable错误处理

一、安装包

pip install memory_profiler   #在pycharm中我尝试需要安装memory-profiler才可以
pip install psutil   #可以提升memory-profiler性能

二、使用

在需要监视的程序前面添加修饰符

1.导入包

from memory_profiler import profile

2.修饰需要监视的程序:

@profile
def my_func():
    a = [1] * (10 ** 6)
    b = [2] * (2 * 10 ** 7)
    del b
    return a

if __name__ == '__main__':
    my_func()

3.运行对应的文件:

pycham中直接运行即可,其他的没有试过

python -m memory_profiler test.py  (对应的文件即可)

三、输出结果

四、保存输出结果:

fp=open('memo.log','w+')    #memo.log 为文件的位置和名称
@profile(stream=fp)

五、选择小数位数:

fp=open('memo.log','w+')
@profile(stream=fp,precision=3)  #precision后面为小数位数

六、常见报错

报错如下:

Traceback (most recent call last):
  File "E:/code/reference/video-fall-detection/test.py", line 6, in <module>
    @profile
TypeError: 'module' object is not callable

解决方法:

导入包的格式有错使用以下代码导入profile:

from memory_profiler import profile

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值