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

嵌套字典和列表的大小

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

嵌套字典和列表的大小

字典和列表存储 引用 (类似于Python中的其他所有标准容器)。

sys.getsizeof()
不遵循引用,它给你的C结构的内存占用 唯一
。引用是C指针;它们的大小取决于您的特定平台。

将字典转换为

repr()
字符串也将内容递归转换为()字符串,因此所有这些引用都将被取消引用并包含在输出中。请注意,这并不是对原始对象的内存大小的准确反映。字符串包含字符,这取决于您的确切Python版本,操作系统以及所使用的Unipre代码点范围,每个字符占用多少内存,并且字符数与所反映的实际对象具有非线性关系。

如果您想知道 包含内容 的字典的内存占用量,
需要递归地进行操作。考虑到字典可以包含对其本身(直接或间接)的引用,或者任何对象可以具有对其的多个引用,并且只应计数 一次
。我将使用该

id()
函数来跟踪已处理的对象。

Stack
Overflow上已经有几篇文章讨论了使用递归或其他工具计算容器的内存大小,请参见sys.getsizeof的Deep版本,Python的带有内容的deep
getsizeof列表?,以及Python中字典的内存使用情况?对于一些例子。



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

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

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