numpy.require
numpy.require(a, dtype=None, requirements=None) [source]
返回提供的类型满足要求的ndarray。
此函数对于确保返回具有正确标志的数组以传递给已编译的代码(也许通过ctypes)非常有用。
参数 : | a :array_like 要转换为满足类型和要求的对象的对象。 dtype :data-type 所需的数据类型。 如果为 如果您的应用程序要求数据以本机字节序显示, 请在dtype规范中包含字节序规范。 requirements :str 或 str类型的list 需求列表可以是以下任意一项 : ‘F_CONTIGUOUS’ (‘F’) :确保Fortran连续数组 ‘C_CONTIGUOUS’ (‘C’) :确保C连续数组 'ALIGNED' ('A') :确保数据类型对齐的数组 ‘WRITEABLE’ (‘W’) :确保可写数组 'OWNDATA' ('O') : 确保数组拥有自己的数据 ‘ENSUREARRAY’, (‘E’) : 确保基本数组而不是子类 |
返回值 : | out :ndarray 如果给定,则具有指定要求和类型的数组。 |
Notes
如果需要,可以通过复制副本来保证返回的数组具有列出的要求。
例子
>>> x = np.arange(6).reshape(2,3) >>> x.flags C_CONTIGUOUS : True F_CONTIGUOUS : False OWNDATA : False WRITEABLE : True ALIGNED : True WRITEBACKIFCOPY : False UPDATEIFCOPY : False
>>> y = np.require(x, dtype=np.float32, requirements=['A', 'O', 'W', 'F']) >>> y.flags C_CONTIGUOUS : False F_CONTIGUOUS : True OWNDATA : True WRITEABLE : True ALIGNED : True WRITEBACKIFCOPY : False UPDATEIFCOPY : False