原文:https://docs.scipy.org/doc/numpy/reference/generated/numpy.recarray.flags.html
校对:(虚位以待)
recarray.
flags
有关数组的内存布局的信息。
笔记
flags
对象可以像字典一样访问(如a.flags['WRITEABLE']
),也可以使用低级属性名称(如a.flags.writeable
)。仅在字典访问中支持短标志名称。
只有UPDATEIFCOPY,WRITEABLE和ALIGNED标志可以由用户通过直接赋值到属性或字典条目或通过调用ndarray.setflags
来更改。
数组标志不能任意设置:
False
。True
。True
。数组可以同时是C风格和Fortran风格的。这对于1维数组是清楚的,但对于更高维数组也是如此。
Even for contiguous arrays a stride for a given dimension arr.strides[dim]
may be arbitrary if arr.shape[dim] == 1
or the array has no elements. 不一般认为self.strides [-1] == self.itemsize / t1>用于C型连续数组或
self.strides [0] == self.itemsize Fortran风格的连续数组是真的。
属性
C_CONTIGUOUS(C) | 数据位于单个C样式连续段中。 |
F_CONTIGUOUS(F) | 数据在单个Fortran风格的连续段中。 |
OWNDATA(O) | 数组拥有它使用的内存或从另一个对象借用它。 |
写(W) | 数据区可以写入。将此设置为False将锁定数据,使其为只读。视图(切片等)在创建时从其基本数组继承WRITEABLE,但随后可写锁定数组的视图,同时基本数组保持可写。(相反的是不正确的,因为锁定的数组的视图可能不可写。但是,当前,锁定基础对象不会锁定已经引用它的任何视图,因此在这种情况下,可以通过先前创建的可写视图来更改已锁定数组的内容。)尝试更改不可写入的数组会引发RuntimeError异常。 |
对齐(A) | 数据和所有元素对于硬件适当地对齐。 |
UPDATEIFCOPY(U) | 这个数组是一些其他数组的副本。当此数组被释放时,基数组将使用此数组的内容进行更新。 |
FNC | F_CONTIGUOUS而不是C_CONTIGUOUS。 |
FORC | F_CONTIGUOUS或C_CONTIGUOUS(单段测试)。 |
BEHAVED(B) | 对齐和可写。 |
卡雷(CA) | BEHAVED和C_CONTIGUOUS。 |
FARRAY(FA) | BEHAVED和F_CONTIGUOUS而不是C_CONTIGUOUS。 |