[英]numpy array with 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):
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 feedback
輸出cython -a feedback
:
我在這里錯過了什么?
非常感謝。
我終於意識到函數最后的一個簡單的“返回0”解決了這個問題。 但是,這種行為對我來說似乎很奇怪。 這實際上是一個錯誤嗎?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.