numpy.chararray.flags
атрибут
-
chararray.flags -
Информация о расположении данных массива в памяти.
Примечания
К объекту
flagsможно получить доступ, как к словарю (как вa.flags['WRITEABLE']), или используя имена атрибутов в нижнем регистре (как вa.flags.writeable). Коротко обозначенные флаги поддерживаются только в доступе к словарю.Только флаги WRITEBACKIFCOPY, UPDATEIFCOPY, WRITEABLE и ALIGNED могут быть изменены пользователем, путем прямого присваивания атрибуту или элементу словаря, или вызова
ndarray.setflags.Флаги массива не могут быть установлены произвольно:
- UPDATEIFCOPY может быть установлен только
False. - WRITEBACKIFCOPY может быть установлен только
False. - ALIGNED может быть установлен только
Trueесли данные действительно выровнены. - WRITEABLE может быть установлен только
Trueесли массив владеет своей памятью или конечный владелец памяти предоставляет интерфейс для записи буфера или является строкой.
Массивы могут быть одновременно C-стилевыми и Fortran-стилевыми контигуальными. Это очевидно для одномерных массивов, но также может быть истинным для многомерных массивов.
Даже для контигуальных массивов шаг для данного измерения
arr.strides[dim]может быть произвольным, еслиarr.shape[dim] == 1или у массива нет элементов. Обычно не верно, чтоself.strides[-1] == self.itemsizeдля C-стилевых контигуальных массивов илиself.strides[0] == self.itemsizeдля Fortran-стилевых контигуальных массивов истинно.- Атрибуты
-
- C_CONTIGUOUS (C)
-
Данные находятся в одном, контигуальном сегменте в стиле C.
- F_CONTIGUOUS (F)
-
Данные находятся в одном, контигуальном сегменте в стиле Fortran.
- OWNDATA (O)
-
Массив владеет памятью, которую использует, или берет ее от другого объекта.
- WRITEABLE (W)
-
Область данных может быть изменена. Установка в значение False блокирует данные, делая их только для чтения. Вид (срез и т.д.) наследует WRITEABLE от базового массива при создании, но вид массива, доступного для записи, может быть впоследствии заблокирован, в то время как базовый массив остается доступным для записи. (Обратное не верно, так как вид заблокированного массива не может быть сделан доступным для записи. Однако в настоящее время блокировка базового объекта не блокирует любые виды, которые уже ссылаются на него, поэтому в этом случае возможно изменение содержимого заблокированного массива через ранее созданный вид, доступный для записи.) Попытка изменить массив, недоступный для записи, вызывает исключение RuntimeError.
- ALIGNED (A)
-
Данные и все элементы выровнены должным образом для аппаратного обеспечения.
- WRITEBACKIFCOPY (X)
-
Этот массив является копией другого массива. Функция C-API PyArray_ResolveWritebackIfCopy должна быть вызвана перед освобождением, чтобы базовый массив был обновлен содержимым этого массива.
- UPDATEIFCOPY (U)
-
(Устарело, используйте WRITEBACKIFCOPY) Этот массив является копией другого массива. При освобождении этого массива базовый массив будет обновлен содержимым этого массива.
- 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.
- UPDATEIFCOPY может быть установлен только
© 2005–2020 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.18/reference/generated/numpy.chararray.flags.html