Spec-Zone.ru › NumPy 1.19

numpy.char.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.

© 2005–2020 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.19/reference/generated/numpy.char.chararray.flags.html

Spec-Zone.ru

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