我有一个 pythonmemoryview
指向一个bytes
我想在 cython 中执行一些处理的对象。
我的问题是:
- 因为
bytes
对象不可写,cython 不允许从中构造类型化(cython)内存视图 - 我也不能使用指针,因为我无法获得指向 memoryview 开始的指针
例子:
在蟒蛇中:
array = memoryview(b'abcdef')[3:]
在赛通中:
cdef char * my_ptr = &array[0]
无法编译并显示以下消息:Cannot take address of Python variable
cdef char[:] my_view = array
在运行时失败并显示以下消息:BufferError: memoryview: underlying buffer is not writable
如何解决这个问题?