numpy.core.defchararray.chararray.setflags
-
chararray.setflags(write=None, align=None, uic=None) -
Устанавливает флаги массива WRITEABLE, ALIGNED и UPDATEIFCOPY соответственно.
Эти булевы флаги влияют на то, как numpy интерпретирует область памяти, используемую
a(см. Примечания ниже). Флаг ALIGNED можно установить в True только в том случае, если данные фактически выровнены в соответствии с типом. Флаг UPDATEIFCOPY никогда нельзя установить в True. Флаг WRITEABLE можно установить в True только в том случае, если массив владеет своей собственной памятью, или конечный владелец памяти предоставляет интерфейс записи буфера, или это строка. (Исключение для строки сделано для того, чтобы распаковку можно было выполнить без копирования памяти.)Параметры: write : bool, необязательно
Определяет, можно ли
aзаписывать.align : bool, необязательно
Определяет, правильно ли
aвыровнен для своего типа.uic : bool, необязательно
Определяет, является ли
aкопией другого массива «базы».Примечания
Флаги массива предоставляют информацию о том, как область памяти, используемая для массива, должна интерпретироваться. Используются 6 булевых флагов, из которых только три могут быть изменены пользователем: UPDATEIFCOPY, WRITEABLE и ALIGNED.
WRITEABLE (W) область данных может быть записана;
ALIGNED (A) данные и шаги выровнены должным образом для оборудования (как определяется компилятором);
UPDATEIFCOPY (U) этот массив является копией некоторого другого массива (ссылка через .base). При освобождении этого массива базовый массив будет обновлен содержимым этого массива.
Все флаги можно получить, используя их первую (заглавную) букву, а также полное имя.
Примеры
>>> y array([[3, 1, 7], [2, 0, 0], [8, 5, 9]]) >>> y.flags C_CONTIGUOUS : True F_CONTIGUOUS : False OWNDATA : True WRITEABLE : True ALIGNED : True UPDATEIFCOPY : False >>> y.setflags(write=0, align=0) >>> y.flags C_CONTIGUOUS : True F_CONTIGUOUS : False OWNDATA : True WRITEABLE : False ALIGNED : False UPDATEIFCOPY : False >>> y.setflags(uic=1) Traceback (most recent call last): File "<stdin>", line 1, in <module> ValueError: cannot set UPDATEIFCOPY flag to True
© 2008–2016 NumPy Developers
Licensed under the NumPy License.
https://docs.scipy.org/doc/numpy-1.11.0/reference/generated/numpy.core.defchararray.chararray.setflags.html