3

我想在 Pyrex 中定义初始化的 C 数组,例如:

unsigned char a[8] = {0,1,2,3,4,5,6,7};

Pyrex 中的等价物是什么?

只是数组是

cdef unsigned char a[8]

但是我怎样才能让它用我的值初始化呢?

4

1 回答 1

4

在Pyrex 的继任者Cython中,这个特性被添加了一年多来修复这个特性请求,所以例如下面的 Cython 现在工作:

cdef double a[] = [0.5, 0.3, 0.1, 0.1]

然而,Pyrex 的开发进度要慢得多(这就是为什么 Cython 几年前被开发人员分叉以加快行动速度的原因),所以我怀疑它是否采用了这个功能(尽管你可以尝试,尤其是如果你使用的是非常Pyrex 的最新版本,0.9.8.6)。

如果 Pyrex 没有为您提供所需的功能,我可以建议改用 Cython 吗?大多数 Pyrex 代码应该在 Cython 中顺利重新编译,并且您确实可以通过这种方式获得额外的功能。

于 2010-03-15T14:50:23.070 回答