Spec-Zone.ru › NumPy 1.11

numpy.core.defchararray.chararray.flags

chararray.flags

Информация о расположении данных в памяти массива.

Примечания

К объекту flags можно получить доступ по аналогии со словарем (как в a.flags['WRITEABLE']), или с помощью имён атрибутов в нижнем регистре (как в a.flags.writeable). Короткое имя флага поддерживается только в доступе по словарю.

Только флаги UPDATEIFCOPY, WRITEABLE и ALIGNED могут быть изменены пользователем, напрямую присваивая значения атрибуту или элементу словаря, или вызывая ndarray.setflags.

Флаги массива не могут быть установлены произвольно:

  • UPDATEIFCOPY может быть установлен только 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) Данные и все элементы выровнены должным образом для оборудования.
UPDATEIFCOPY (U) Этот массив является копией другого массива. При освобождении этого массива базовый массив будет обновлён содержимым этого массива.
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.

© 2008–2016 NumPy Developers
Licensed under the NumPy License.
https://docs.scipy.org/doc/numpy-1.11.0/reference/generated/numpy.core.defchararray.chararray.flags.html

Spec-Zone.ru

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