numpy.matrix.flags
-
matrix.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–2019 NumPy Developers
Licensed under the 3-clause BSD License.
https://docs.scipy.org/doc/numpy-1.14.5/reference/generated/numpy.matrix.flags.html