栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 面试经验 > 面试问答

列出ipython和jupyter中的内存使用情况

面试问答 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

列出ipython和jupyter中的内存使用情况

假设你正在使用

ipython
或者
jupyter
,你需要做的工作一点点地得到一个列表中的所有对象的
已经定义。这意味着要提供一切
globals()
和剔除这些对象
modules
builtins
ipythonobjects
,等等。一旦你确定你有这些对象,那么你就可以继续与抢夺它们的大小
sys.getsizeof
。可以总结如下:

import sys# These are the usual ipython objects, including this one you are creatingipython_vars = ['In', 'Out', 'exit', 'quit', 'get_ipython', 'ipython_vars']# Get a sorted list of the objects and their sizessorted([(x, sys.getsizeof(globals().get(x))) for x in dir() if not x.startswith('_') and x not in sys.modules and x not in ipython_vars], key=lambda x: x[1], reverse=True)

请记住,对于python对象(使用python的内置函数创建的对象),

sys.getsizeof
将非常准确。但是使用第三方库创建的对象可能有点不准确。此外,请注意,
sys.getsizeof
如果对象由垃圾收集器管理,则会增加额外的垃圾收集器开销。因此,某些事情看起来可能比实际的要重。

附带说明一下,

numpy
.nbytes
方法可能会引起误解,因为它不包括数组对象的非元素属性消耗的内存。

我希望这有帮助。



转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/647225.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号