numpy.ma.MaskedArray.flags#
屬性
- ma.MaskedArray.flags#
關於陣列記憶體佈局的資訊。
註解
可以像字典一樣存取
flags
物件(如a.flags['WRITEABLE']
),或使用小寫屬性名稱(如a.flags.writeable
)。只有字典存取支援短旗標名稱。只有 WRITEBACKIFCOPY、WRITEABLE 和 ALIGNED 旗標可以由使用者更改,透過直接賦值給屬性或字典條目,或呼叫
ndarray.setflags
。陣列旗標不能任意設定
WRITEBACKIFCOPY 只能設定為
False
。只有在資料確實對齊時,ALIGNED 才能設定為
True
。只有在陣列擁有自己的記憶體,或記憶體的最終擁有者暴露可寫入的緩衝區介面或為字串時,WRITEABLE 才能設定為
True
。
陣列可以同時是 C 風格和 Fortran 風格的連續。對於一維陣列來說很清楚,但對於更高維度的陣列也可能是如此。
即使對於連續陣列,如果
arr.shape[dim] == 1
或陣列沒有元素,則給定維度arr.strides[dim]
的步幅可能是任意的。對於 C 風格的連續陣列,self.strides[-1] == self.itemsize
或者對於 Fortran 風格的連續陣列,self.strides[0] == self.itemsize
通常不成立。- 屬性:
- C_CONTIGUOUS (C)
資料在單一、C 風格的連續區段中。
- F_CONTIGUOUS (F)
資料在單一、Fortran 風格的連續區段中。
- OWNDATA (O)
陣列擁有它使用的記憶體,或從另一個物件借用。
- WRITEABLE (W)
資料區域可以寫入。將其設定為 False 會鎖定資料,使其成為唯讀。視圖(切片等)從其基礎陣列繼承建立時的 WRITEABLE,但是可寫入陣列的視圖可能隨後被鎖定,而基礎陣列仍然可寫入。(相反的情況是不成立的,即鎖定陣列的視圖可能不會變成可寫入的。但是,目前,鎖定基礎物件不會鎖定任何已經引用它的視圖,因此在這種情況下,可以透過先前建立的可寫入視圖來更改鎖定陣列的內容。)嘗試更改不可寫入的陣列會引發 RuntimeError 異常。
- ALIGNED (A)
資料和所有元素都針對硬體適當地對齊。
- WRITEBACKIFCOPY (X)
此陣列是其他陣列的副本。在解除分配之前必須呼叫 C-API 函式 PyArray_ResolveWritebackIfCopy,基礎陣列才會使用此陣列的內容更新。
- FNC
F_CONTIGUOUS 且非 C_CONTIGUOUS。
- FORC
F_CONTIGUOUS 或 C_CONTIGUOUS(單區段測試)。
- BEHAVED (B)
ALIGNED 且 WRITEABLE。
- CARRAY (CA)
BEHAVED 且 C_CONTIGUOUS。
- FARRAY (FA)
BEHAVED 且 F_CONTIGUOUS 且非 C_CONTIGUOUS。