numpy.char.chararray.setflags
метод
- char.chararray.setflags(write=None, align=None, uic=None)
-
Устанавливает флаги массива WRITEABLE, ALIGNED, WRITEBACKIFCOPY соответственно.
Эти логические флаги влияют на то, как numpy интерпретирует область памяти, используемую
a(см. Примечания ниже). Флаг ALIGNED может быть установлен только в значение True, если данные действительно выровнены согласно типу. Флаг WRITEBACKIFCOPY никогда не может быть установлен в значение True. Флаг WRITEABLE может быть установлен только в значение True, если массив владеет собственной памятью, или конечный владелец памяти предоставляет интерфейс записываемого буфера, или это строка. (Исключение для строки сделано для того, чтобы распаковку можно было выполнить без копирования памяти.)- Параметры:
-
- writebool, необязательно
-
Определяет, может ли быть записано в
a. - alignbool, необязательно
-
Определяет, правильно ли
aвыровнен для своего типа. - uicbool, необязательно
-
Определяет, является ли
aкопией другого массива «базы».
Примечания
Флаги массива предоставляют информацию о том, как область памяти, используемая для массива, должна быть интерпретирована. Используются 7 логических флагов, только три из которых могут быть изменены пользователем: WRITEBACKIFCOPY, WRITEABLE и ALIGNED.
WRITEABLE (W) область данных может быть записана;
ALIGNED (A) данные и шаги выровнены должным образом для оборудования (как определяется компилятором);
WRITEBACKIFCOPY (X) этот массив является копией какого-либо другого массива (ссылка через .base). При вызове функции C-API PyArray_ResolveWritebackIfCopy базовый массив будет обновлен содержимым этого массива.
К флагам можно получить доступ, используя как одиночную (заглавную) букву, так и полное имя.
Примеры
>>> y = np.array([[3, 1, 7], ... [2, 0, 0], ... [8, 5, 9]]) >>> 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 WRITEBACKIFCOPY : False >>> y.setflags(write=0, align=0) >>> y.flags C_CONTIGUOUS : True F_CONTIGUOUS : False OWNDATA : True WRITEABLE : False ALIGNED : False WRITEBACKIFCOPY : False >>> y.setflags(uic=1) Traceback (most recent call last): File "<stdin>", line 1, in <module> ValueError: cannot set WRITEBACKIFCOPY flag to True
© 2005–2024 NumPy Developers
Licensed under the 3-clause BSD License.
https://numpy.org/doc/2.0/reference/generated/numpy.char.chararray.setflags.html