Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/297.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 带cython的numpy阵列_Python_Numpy_Cython - Fatal编程技术网

Python 带cython的numpy阵列

Python 带cython的numpy阵列,python,numpy,cython,Python,Numpy,Cython,我试图将一些python代码移植到cython,但遇到了一些小问题 下面是代码片段(简化示例) cimport numpy as np cimport cython @cython.boundscheck(False) # turn of bounds-checking for entire function @cython.wraparound(False) @cython.nonecheck(False) def Interpolation(cells, int nmbcellsx):

我试图将一些python代码移植到cython,但遇到了一些小问题

下面是代码片段(简化示例)

cimport numpy as np
cimport cython
@cython.boundscheck(False) # turn of bounds-checking for entire function
@cython.wraparound(False)
@cython.nonecheck(False)
def Interpolation(cells, int nmbcellsx):
    cdef np.ndarray[float,ndim=1] celle
    cdef int cellnonzero
    cdef int i,l
    for i in range(nmbcellsx):
          celle = cells[i].e
          cellnonzero = cells[i].nonzero
          for l in range(cellnonzero):
               celle[l] = celle[l] * celle[l]
我不明白为什么最内部的循环不能完全转换为C代码(即最后一行,celle[l]=…),请参见
cython-a反馈的输出:

我错过了什么


非常感谢。

我终于意识到,函数末尾的一个简单的“返回0”解决了这个问题。然而,这种行为对我来说似乎很奇怪。这真的是一个bug吗?

该图像有点难读-复制和粘贴相关位会更容易…你有什么c编译器?
celle[l]*=celle[l]
是否相同?