我正在寻找一种简单的方法来了解数组和字典对象的字节大小,比如
[ [1,2,3], [4,5,6] ] or { 1:{2:2} }
很多主题都说使用pylab,例如:
from pylab import *
A = array( [ [1,2,3], [4,5,6] ] )
A.nbytes
24
但是,字典怎么样?
我看到很多答案建议使用pysize或heapy。 Torsten Marek在这个链接中给出了一个简单的答案:推荐使用哪种Python内存分析器?但是由于字节数不匹配,我对输出没有明确的解释。
Pysize似乎更复杂,我还没有明确如何使用它。
鉴于我想要执行的大小计算的简单性(没有类或复杂的结构),任何关于如何简单估计这种对象的内存使用量的想法?
亲切的问候。
有:
>>> import sys
>>> sys.getsizeof([1,2, 3])
96
>>> a = []
>>> sys.getsizeof(a)
72
>>> a = [1]
>>> sys.getsizeof(a)
80
但我不会说它是可靠的,因为Python对每个对象都有开销,并且有些对象除了引用其他对象之外什么也没有,所以它与C和其他语言不完全相同。
阅读sys.getsizeof上的文档并从那里开始我想。
我尝试了这种方式,但是