Объекты MemoryView¶MemoryView objects
Объект memoryview предоставляет интерфейс буфера на уровне C в виде объекта Python, который можно передавать как любой другой объект.
- PyObject *PyMemoryView_FromObject(PyObject *obj)¶
- Создаёт объект memoryview из объекта, предоставляющего буферный интерфейс. Если obj поддерживает экспорт буфера с возможностью записи, объект memoryview будет доступен для чтения и записи, в противном случае – только для чтения.
- PyObject *PyMemoryView_FromBuffer(Py_buffer *view)¶
- Создаёт объект memoryview, оборачивающий данную буферную структуру view. Объект memoryview затем владеет буфером, представленным view, что означает, что не следует пытаться вызывать PyBuffer_Release() самостоятельно: это будет выполнено при освобождении объекта memoryview.
- PyObject *PyMemoryView_GetContiguous(PyObject *obj, int buffertype, char order)¶
- Создаёт объект memoryview для непрерывного блока памяти (в порядке «C» или «Фортран» order) на основе объекта, определяющего буферный интерфейс. Если память непрерывна, объект memoryview указывает на исходную память. В противном случае создаётся копия, и memoryview указывает на новый объект bytes.
- int PyMemoryView_Check(PyObject *obj)¶
- Возвращает истину, если объект obj является объектом memoryview. В настоящее время не разрешается создавать подклассы memoryview.