Spec-Zone.ru › NumPy 1.14

numpy.ma.MaskedArray.flags

MaskedArray.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.

© 2005–2019 NumPy Developers
Licensed under the 3-clause BSD License.
https://docs.scipy.org/doc/numpy-1.14.5/reference/generated/numpy.ma.MaskedArray.flags.html

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API