【发布时间】:2013-06-05 13:09:01
【问题描述】:
我正在将 Cython 包装器写入 C 函数。我有一个带有以下签名的 pxd 文件:
double contr_hrr(int lena, double xa, double ya, double za, double *anorms)
当我尝试从 pyx 文件中调用它时
...
return contr_hrr(len(acoefs),a.origin[0],a.origin[1],a.origin[2],anorms2)
anoms2 是一个 python 列表,我收到错误消息:
cython/ctwo.pyx:35:80: Cannot convert Python object to 'double *'
如何将 python 列表作为双数组传递给 C 函数?
【问题讨论】:
-
如果你有机会测试不同的方法,我很想知道哪种方法最快......
-
@Golgauth - 我一定会试一试。代码比我使用 C 直接包装 C 例程的旧方法慢 2 倍。
-
你最后的方法是什么?也许您可以在此发布您自己的答案...
-
@Golgauth - 完成,见下文。