当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python numpy ndarray用法及代码示例


本文简要介绍 python 语言中 numpy.ndarray 的用法。

用法:

class  numpy.ndarray(shape, dtype=float, buffer=None, offset=0, strides=None, order=None)

数组对象表示一个多维、同质的固定大小项目数组。关联的数据类型对象说明了数组中每个元素的格式(它的字节顺序、它在内存中占用的字节数、它是整数、浮点数还是其他东西等)

数组应该使用numpy.array,numpy.zeros或者numpy.empty(请参阅下面的另请参阅部分)。这里给出的参数指的是低级方法(数组(…)) 用于实例化一个数组。

有关详细信息,请参阅 numpy 模块并检查数组的方法和属性。

参数

(for the __new__ method; see Notes below)
shape 整数元组

创建数组的形状。

dtype 数据类型,可选

任何可以解释为 numpy 数据类型的对象。

buffer 对象暴露缓冲区接口,可选

用于用数据填充数组。

offset 整数,可选

缓冲区中数组数据的偏移量。

strides 整数元组,可选

内存中的数据步长。

order {‘C’, ‘F’},可选

行优先(C 风格)或列优先(Fortran-style)顺序。

注意

使用 __new__ 创建数组有两种模式:

  1. 如果缓冲是无,那么只有numpy.shape,numpy.dtype, 和次序被使用。

  2. 如果 buffer 是一个暴露缓冲区接口的对象,那么所有的关键字都会被解释。

不需要__init__ 方法,因为数组在__new__ 方法之后完全初始化。

例子

这些例子说明了低级ndarray构造函数。请参阅也可以看看上面的部分是构建 ndarray 的更简单方法。

第一种模式,缓冲区为无:

>>> np.ndarray(shape=(2,2), dtype=float, order='F')
array([[0.0e+000, 0.0e+000], # random
       [     nan, 2.5e-323]])

第二种模式:

>>> np.ndarray((2,), buffer=np.array([1,2,3]),
...            offset=np.int_().itemsize,
...            dtype=int) # offset = 1*itemsize, i.e. skip first element
array([2, 3])

属性

numpy.ndarray.T ndarray

转置数组。

data 缓冲

指向数组数据开头的 Python 缓冲区对象。

numpy.dtype 数据类型对象

数组元素的数据类型。

flags dict

有关阵列的内存布局的信息。

numpy.ndarray.flat numpy.flatiter 对象

数组上的一维迭代器。

numpy.imag ndarray

数组的虚部。

numpy.real ndarray

数组的实部。

numpy.ndarray.size int

数组中的元素数。

numpy.ndarray.itemsize int

一个数组元素的长度(以字节为单位)。

numpy.ndarray.nbytes int

数组元素消耗的总字节数。

numpy.ndarray.ndim int

数组维数。

numpy.shape 整数元组

数组维度的元组。

numpy.ndarray.strides 整数元组

遍历数组时要在每个维度中步进的字节元组。

numpy.ndarray.ctypes ctypes 对象

一个用于简化数组与 ctypes 模块交互的对象。

numpy.ndarray.base ndarray

如果内存来自其他对象,则为基础对象。

相关用法


注:本文由纯净天空筛选整理自numpy.org大神的英文原创作品 numpy.ndarray。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。