Объекты MemoryView
Объект memoryview предоставляет интерфейс буфера уровня C как объект Python, который можно передавать как любой другой объект.
-
PyObject *PyMemoryView_FromObject(PyObject *obj) -
Значение возврата: Новая ссылка. Часть Стабильной ABI.
Создать объект memoryview из объекта, предоставляющего интерфейс буфера. Если obj поддерживает экспорт буфера для записи, объект memoryview будет чтением/записью, в противном случае он может быть только чтением или чтением/записью по усмотрению экспортера.
-
PyBUF_READ -
Флаг для запроса буфера только для чтения.
-
PyBUF_WRITE -
Флаг для запроса буфера для записи.
-
PyObject *PyMemoryView_FromMemory(char *mem, Py_ssize_t size, int flags) -
Значение возврата: Новая ссылка. Часть Стабильной ABI с версии 3.7.
Создать объект memoryview, используя mem в качестве базового буфера. flags может быть одним из
PyBUF_READилиPyBUF_WRITE.Добавлена в версии 3.3.
-
PyObject *PyMemoryView_FromBuffer(const Py_buffer *view) -
Значение возврата: Новая ссылка. Часть Стабильной ABI с версии 3.11.
Создать объект memoryview, оборачивающий заданную структуру буфера view. Для простых буферов байтов,
PyMemoryView_FromMemory()— предпочтительная функция.
-
PyObject *PyMemoryView_GetContiguous(PyObject *obj, int buffertype, char order) -
Значение возврата: Новая ссылка. Часть Стабильной ABI.
Создать объект memoryview для смежного блока памяти (в порядке ‘C’ или ‘F’ortran order) из объекта, определяющего интерфейс буфера. Если память смежная, объект memoryview указывает на исходную память. В противном случае создается копия, и memoryview указывает на новый объект bytes.
buffertype может быть одним из
PyBUF_READилиPyBUF_WRITE.
-
int PyMemoryView_Check(PyObject *obj) -
Возвращает True, если объект obj является объектом memoryview. В настоящее время запрещено создавать подклассы
memoryview. Эта функция всегда выполняется успешно.
-
Py_buffer *PyMemoryView_GET_BUFFER(PyObject *mview) -
Возвращает указатель на частную копию буфера экспортера в memoryview. mview обязательно должен быть экземпляром memoryview; эта макрос не проверяет его тип, вы должны это сделать сами, или рискуете ошибками.
-
PyObject *PyMemoryView_GET_BASE(PyObject *mview) -
Возвращает указатель на экспортирующий объект, на котором основан memoryview, или
NULLесли memoryview был создан одной из функцийPyMemoryView_FromMemory()илиPyMemoryView_FromBuffer(). mview обязательно должен быть экземпляром memoryview.
© 2001–2024 Python Software Foundation
Licensed under the PSF License.
https://docs.python.org/3.12/c-api/memoryview.html