相关疑难解决方法(0)

Python结构的内存大小

是否有关于32位和64位平台上Python数据结构的内存大小的参考?

如果没有,这将是很好的在SO上.越详尽越好!那么以下Python结构使用了多少字节(取决于len相关时的内容类型)?

  • int
  • float
  • 参考
  • str
  • unicode字符串
  • tuple
  • list
  • dict
  • set
  • array.array
  • numpy.array
  • deque
  • 新式类对象
  • 旧式的类对象
  • ......以及我忘记的一切!

(对于仅保留对其他对象的引用的容器,我们显然不希望自己计算项目的大小,因为它可能是共享的.)

此外,有没有办法在运行时(递归或不递归)获取对象使用的内存?

python memory memory-footprint

111
推荐指数
5
解决办法
9万
查看次数

如何在python中测量对象的内存使用情况?

我有一个python类"foo",其中包含:

  • 数据(整数,浮点数)
  • 列表(整数,浮点数和其他对象)
  • 字典(整数,浮点数,其他对象)

假设没有反向引用(循环),是否有一种简单的方法来衡量"foo"对象的总内存使用量?

基本上,我正在寻找"sys.getsizeof" 的递归版本

少数的,我碰到的工具包括:heapy,objgraph和GC,但我不认为任何人都能够胜任工作(我可以在此进行校正)

建议赞赏!

python memory-management

8
推荐指数
2
解决办法
4836
查看次数

为什么 Python 列表的内存使用量比预期的要小?

在此处输入图片说明

如图所示。50 000 000条记录只占用404M内存,为什么?由于一条记录占用 83 字节,因此 50 000 000 条记录应占用 3967M 内存。

>>> import sys
>>> a=[]
>>> for it in range(5*10**7):a.append("miJ8ZNFG9iFqiQQohvyTWwqsij2rJCiZ7v"+str(it))
... 
>>> print(sys.getsizeof(a)/1024**2)
404.4306411743164
>>> print(sys.getsizeof("miJ8ZNFG9iFqiQQohvyTWwqsij2rJCiZ7v"))
83
>>> print(83*5*10**7/1024**2)
3957.7484130859375
>>> 
Run Code Online (Sandbox Code Playgroud)

python memory list

5
推荐指数
1
解决办法
131
查看次数

嵌套字典和列表的大小

我有以下格式的字典:

演示代码:

>>> import pprint
>>> pprint.pprint(data)
{'lookup': {'F01': '\n.custom1 {\n    background-color: #f5e9dc;\n    padding: 10px;\n    border-radius: 10px;\n    font-family: sans-serif;\n    font-size: 0.9em;\n    margin-top: 1em;\n    }\n.custom2 .style8-rw {\n    font-family: sans-serif;\n    font-weight: bold;\n    color: #F57215;\n    }',
            'F02': '\n.custom1 {\n    background-color: #f5e9dc;\n    padding: 10px;\n    border-radius: 10px;\n    font-family: sans-serif;\n    font-size: 0.9em;\n    margin-top: 1em;\n    }\n.custom2 .style8-rw {\n    font-family: sans-serif;\n    font-weight: bold;\n    color: #F57215;\n    }',
            'F03': '\n.custom1 {\n    background-color: #f5e9dc;\n    padding: 10px;\n    border-radius: 10px;\n    font-family: sans-serif;\n    font-size: 0.9em;\n    margin-top: 1em;\n    }\n.custom2 .style8-rw {\n    font-family: sans-serif;\n    font-weight: bold;\n …
Run Code Online (Sandbox Code Playgroud)

python string dictionary list

4
推荐指数
1
解决办法
2453
查看次数