好得很程序员自学网

<tfoot draggable='sEl'></tfoot>

Python 如何查看程序内存占用情况

查看程序内存占用情况 flyfish psutil 这里用在查看内存占用情况 memory_profiler 输出每一行代码增减的内存

安装

pip install memory_profiler

代码

import numpy as np
import os
import psutil
import gc
from memory_profiler import profile

@profile
def test():
? ? a=np.full(shape=(600, 700), fill_value=99.0)
? ? return a

if __name__ == '__main__':

? ? a=test()

? ? print('A:%.2f MB' % (psutil.Process(os.getpid()).memory_info().rss / 1024 / 1024))
? ? del a
? ? gc.collect()
? ? print('B:%.2f MB' % (psutil.Process(os.getpid()).memory_info().rss / 1024 / 1024))

如果没有from memory_profiler import profile这句代码,执行终端命令如下

python -m memory_profiler test.py

结果

Line #    Mem usage    Increment  Occurences   Line Contents
============================================================
    10     53.8 MiB     53.8 MiB           1   @profile
    11                                         def test():
    12     56.8 MiB      3.0 MiB           1       a=np.full(shape=(600, 700), fill_value=99.0)
    13     56.8 MiB      0.0 MiB           1       return a


A:56.83 MB
B:53.83 MB

python查看内存使用

在程序中使用python查看电脑内存,可以使用:

import psutil
import os

info = psutil.virtual_memory()
print(u'内存使用:',psutil.Process(os.getpid()).memory_info().rss)
print(u'总内存:',info.total)
print(u'内存占比:',info.percent)
print(u'cpu个数:',psutil.cpu_count())

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。

查看更多关于Python 如何查看程序内存占用情况的详细内容...

  阅读:48次