21得票1回答
在Cython中使用缓冲区API

我正在使用一个C库,该库重复调用用户提供的函数指针以获取更多数据。我想编写一个Cython包装器,以便Python实现的回调函数可以返回任何合理的数据类型,如str、bytearray、内存映射文件等(具体支持缓冲区接口)。目前我的代码如下:from cpython.buffer cimpor...

13得票2回答
使用ctypes数组作为numpy数组时出现PEP 3118警告

当我尝试将ctypes数组用作numpy数组时,出现以下警告信息:Python 2.7.1 (r271:86832, Nov 27 2010, 18:30:46) [MSC v.1500 32 bit (Intel)] on win32 Type "help", "copyright", "c...

9得票1回答
当类实现PEP 3118时,Python 2.7中PyBufferProcs的定义

我正在扩展我们库中的类(支持Python 2.7),以支持已经被回溯到2.7的PEP 3118。根据文档,我需要将tp_as_buffer字段初始化为指向PyBufferProcs的指针。然而,从2.7的文档中,此结构的描述仅包含旧缓冲区协议的条目。从源代码中,我收集到PyBufferProc...