在性能方面(代数运算,查找,缓存等),C数组(可以作为C数组公开,或者cython.view.array[Cython数组],或上述两者的内存视图)和NumPy数组(在Cython中应该没有Python开销)
编辑:
我应该提一下,在NumPy数组中使用Cython进行静态类型化,dtypes是NumPy编译时数据类型(例如cdef np.int_t或者cdef np.float32_t),C语言中的类型是C等价物(cdef int_t和cdef float)
EDIT2:
以下是Cython Memoryview文档中的示例,以进一步说明我的问题:
from cython.view cimport array as cvarray
import numpy as np
# Memoryview on a NumPy array
narr = np.arange(27, dtype=np.dtype("i")).reshape((3, 3, 3))
cdef int [:, :, :] narr_view = narr
# Memoryview on a C array
cdef int carr[3][3][3]
cdef int [:, :, :] carr_view = carr
# Memoryview on a Cython …Run Code Online (Sandbox Code Playgroud)