numpy ndarray使用了多少内存?

Mic*_*ers 21 python memory arrays floating-point numpy

有人知道numpy ndarray使用了多少内存?(假设有10,000,000个浮动元素).

Sve*_*ach 33

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

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

>>> a = numpy.arange(1000.0)
>>> a.nbytes
8000
>>> a.itemsize
8
Run Code Online (Sandbox Code Playgroud)

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