Spec-Zone.ru › NumPy 1.21

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

Spec-Zone.ru

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