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