初期化されたC配列をPyrexで定義したいのですが、たとえば次のようになります。
unsigned char a[8] = {0,1,2,3,4,5,6,7};
Pyrexでは何が同等になりますか?
ただ配列は
cdef unsigned char a[8]
しかし、どうすれば自分の値で初期化できますか?
初期化されたC配列をPyrexで定義したいのですが、たとえば次のようになります。
unsigned char a[8] = {0,1,2,3,4,5,6,7};
Pyrexでは何が同等になりますか?
ただ配列は
cdef unsigned char a[8]
しかし、どうすれば自分の値で初期化できますか?
Pyrexの後継であるCythonでは、この機能はこの機能のリクエストを修正するために1年以上にわたって追加されたため、たとえば、Cythonでは次のように機能します。
cdef double a[] = [0.5, 0.3, 0.1, 0.1]
ただし、Pyrexの開発ははるかにゆっくりと進んでいます(これが、Cythonが開発者rarinによって何年も前にフォークされた理由です)ので、この機能が採用されているとは思えません(ただし、非常にPyrexの最新リリース、0.9.8.6)。
Pyrexが必要な機能を提供していない場合は、代わりにCythonに切り替えることをお勧めしますか?ほとんどのPyrexコードは、Cythonでスムーズに再コンパイルされるはずであり、この方法で追加機能を利用できます。