numpy ndarray使用了多少内存?

时间:2012-02-22 13:29:32

标签: python arrays memory numpy floating-point

有人知道numpy ndarray使用了多少内存? (让我们说10,000,000个浮动元素)。

2 个答案:

答案 0 :(得分:32)

数组只是存储在内存中的一个连续块中。假设“float”表示标准的双精度浮点数,那么数组每个元素需要8个字节。

通常,您可以简单地查询nbytes属性以获取数组的总内存需求,并itemsize查询单个元素的大小(以字节为单位):

>>> a = numpy.arange(1000.0)
>>> a.nbytes
8000
>>> a.itemsize
8

除了实际的数组数据外,还会有一个包含数组元信息的小数据结构。特别是对于大型阵列,这种数据结构的大小可以忽略不计。

答案 1 :(得分:0)

我很容易高斯,我们可以用print(a.size // 1024 // 1024, a.dtype)进行计算 它的使用量类似于MB的使用量,但是对于参数dtype,float = 8B,int8 = 1B ...