亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Industrial programming >> Python

使用 sys.getsizeof() 高效测量 Python 对象内存占用

使用 sys.getsizeof() 高效测量 Python 对象内存占用

使用 sys.getsizeof() 可以查看对象的内存占用:

import sys
mylist = range(0, 10000)
print(sys.getsizeof(mylist))  # 48

哇……等等……为什么这个巨大的列表只有 48 字节?

因为 range 函数返回的是一个可迭代对象,它表现得像一个数字列表,但内部仅记录最后一次迭代的数字。range 比实际的数字列表节省更多内存。

你可以通过列表推导式从同一个 range 创建一个真实的 Python 列表来验证这一点:

import sys
myreallist = [x for x in range(0, 10000)]
print(sys.getsizeof(myreallist))  # 87632

10,000 个数字大约占用 87KB 内存。

Python

  1. 工程机械春季备战指南:省时延寿命
  2. 季度供应链体检:保障运营顺畅
  3. 精通Python数据类型:实战指南
  4. 精通Python运算符:全面指南
  5. 精通Python For循环:语法、示例与进阶模式
  6. 精通Python While循环:语法、示例与最佳实践
  7. 精通Python Pass语句:实战指南
  8. 精通Python函数参数:位置、关键字与默认参数
  9. 精通 Python 字典:创建、操作与进阶技巧
  10. 精通 Python range() 函数:从基础到高级用法
  11. Python time.sleep():为代码添加延迟的完整指南
  12. Python 检查文件与目录是否存在:实战指南