我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Python利用memory_profiler查看内存占用情况

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Python利用memory_profiler查看内存占用情况

简介

memory_profiler是第三方模块,用于监视进程的内存消耗以及python程序内存消耗的逐行分析。它是一个纯python模块,依赖于psutil模块。

安装

pip install memory_profiler

使用方法

1、通过装饰器运行

@profile
def func1():

2、通过命令行运行

python -m memory_profiler test_code.py

案例源码:

# -*- coding: utf-8 -*-
# time: 2022/6/11 21:17
# file: test_code.py
# 公众号: 玩转测试开发
from memory_profiler import profile

loop = 50000


@profile
def func1():
    s1 = [i for i in range(loop)]
    s2 = []
    for i in range(loop):
        if i & 1 == 1:
            s2.append(i)
    result = sum(s1) + sum(s2)
    del s1
    del s2
    return result


if __name__ == '__main__':
    result = func1()
    print(result)

方法1运行结果:

方法2运行结果:

补充

下面小编为大家整理了一下memory_profiler的一些使用

1、直接打印结果到终端上

#coding:utf8 
from memory_profiler import profile 
 
@profile 
def test1(): 
    c=list() 
    for item in range(10000): 
        c.append(item) 
 
 
if __name__=='__main__': 
    test1() 

结果如下

Filename: D:/python/test_sip/test_check_es.py 
 
Line #    Mem usage    Increment   Line Contents 
================================================ 
   474     16.6 MiB     16.6 MiB   @profile 
   475                             def test1(): 
   476     16.6 MiB      0.0 MiB       c=list() 
   477     17.0 MiB      0.0 MiB       for item in range(10000): 
   478     17.0 MiB      0.1 MiB           c.append(item) 

2、定义输出到文件,定义结果保留的小数位

#coding:utf8 
from memory_profiler import profile 
 
@profile(precision=4,stream=open('memory_profiler.log','w+')) 
def test1(): 
    c=list() 
    for item in range(10000): 
        c.append(item) 
 
 
if __name__=='__main__': 
    test1() 

结果如下

Filename: D:/python/test_sip/test_check_es.py 
 
Line #    Mem usage    Increment   Line Contents 
================================================ 
   474  16.5391 MiB  16.5391 MiB   @profile(precision=4,stream=open('memory_profiler.log','w+')) 
   475                             def test1(): 
   476  16.5430 MiB   0.0039 MiB       c=list() 
   477  16.8906 MiB   0.0039 MiB       for item in range(10000): 
   478  16.8906 MiB   0.0391 MiB           c.append(item) 

到此这篇关于Python利用memory_profiler查看内存占用情况的文章就介绍到这了,更多相关Python memory_profiler查看内存占用内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Python利用memory_profiler查看内存占用情况

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

python怎么查看内存占用情况

可以使用Python的内置模块`sys`来查看内存占用情况。1. 使用`sys.getsizeof()`函数来获取对象占用的内存大小。例如:```pythonimport sysmy_var = "Hello World"print(sys
2023-09-15

mysql怎么查看内存占用情况

要查看MySQL内存占用情况,可以使用以下几种方法:使用MySQL自带的performance_schema插件:通过performance_schema插件可以查看MySQL实例的内存占用情况,包括内存使用情况、内存分配情况、缓冲池使用情
mysql怎么查看内存占用情况
2024-04-09

linux怎么查看内存占用情况

在Linux上查看内存占用情况可以使用以下命令:free命令:用于查看系统内存的使用情况。free -h该命令将以可读的方式显示内存使用情况,包括物理内存和交换空间。top命令:用于动态地查看系统的运行情况。top在top命令的输出
2023-10-24

Python怎么查看程序内存占用情况

今天小编给大家分享一下Python怎么查看程序内存占用情况的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。查看程序内存占用情况
2023-06-30

win11如何查看内存占用情况

这篇文章主要介绍了win11如何查看内存占用情况的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇win11如何查看内存占用情况文章都会有所收获,下面我们一起来看看吧。方法一:1、首先右键“windows徽标”,打
2023-07-02

ubuntu怎么查看内存占用和查看cpu使用情况

这篇文章主要介绍“ubuntu怎么查看内存占用和查看cpu使用情况”,在日常操作中,相信很多人在ubuntu怎么查看内存占用和查看cpu使用情况问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”ubuntu怎么查
2023-06-13

Linux中怎么用smem查看内存占用情况

小编给大家分享一下Linux中怎么用smem查看内存占用情况,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!无论是作为系统管理员,还是作为使用桌面版Linux的简单
2023-06-16

Linux下怎么查看CPU和内存占用情况

这篇文章将为大家详细讲解有关Linux下怎么查看CPU和内存占用情况,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。top命令  top命令是Linux下常用的性能分析工具,能够实时显示系统中各个进程的资源
2023-06-28

云服务器内存占用情况怎么查看

要查看云服务器的内存占用情况,可以使用以下方法:1. 使用命令行工具:登录到云服务器的命令行界面,使用命令`free -h`可以查看内存使用情况,其中的`-h`参数可以以易读的方式显示内存大小。2. 使用图形界面监控工具:如果云服务器安装了
2023-09-21

云服务器内存占用情况怎么查看

云服务器内存占用情况查看通过命令行(Linux/Windows)、云服务器控制台(阿里云ECS/腾讯云CVM/华为云ECS)或监控工具(Prometheus/Grafana/Zabbix)查看云服务器的内存占用情况。定期监视内存使用率,确定消耗大量内存的进程,并根据最佳实践优化内存使用,如调整系统设置、优化代码和添加更多内存等。
云服务器内存占用情况怎么查看
2024-04-11

Shell脚本查看进程内存真实占用情况

#!/bin/bash#****************************************************************## ScriptName: pm# Author: osdba# Create Dat
2022-06-04

linux怎么查看各个进程内存占用情况

在Linux系统中,可以使用以下命令来查看各个进程的内存占用情况:1. top命令:在终端中输入top命令,然后按下shift+m键(大写)来按照内存占用情况对进程进行排序。top命令会实时显示系统的各项性能指标,包括内存使用情况。2. p
2023-10-09

linux查看内存占用情况的方法是什么

Linux系统中查看内存占用情况的方法有多种。使用free命令:在终端中输入free命令,即可显示系统的内存使用情况。该命令会显示总内存、已使用内存、空闲内存、已用内存、缓冲区和缓存等信息。使用top命令:在终端中输入top命令,然后按下M
2023-10-23

linux怎么查看各个进程的内存占用情况

在Linux系统中,可以使用以下命令来查看各个进程的内存占用情况:1. `top`命令:在终端中输入`top`命令可以实时查看系统的进程信息,包括内存占用情况。在top界面中,按下`Shift + M`可以按照内存使用量排序进程。2. `p
2023-09-13

使用 cipher.AEAD.Seal() 查看内存使用情况

问题内容我正在使用 Go 的 ChaCha20-Poly1305 实现来加密数据,但是当我加密一些大文件时,内存使用量高于我的预期。据我所知,Go 的 AEAD 密码实现意味着我们必须将整个数据保存在内存中才能创建哈希,但内存使用量是明文
使用 cipher.AEAD.Seal() 查看内存使用情况
2024-02-06

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录