Spec-Zone.ru › NumPy 1.21

numpy.char.chararray.flags

атрибут

char.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–2022 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/1.21/reference/generated/numpy.char.chararray.flags.html

Spec-Zone.ru

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