我要釋放的GIL內部for循環三維numpy的陣列用Cython與numpy的如何擺脫花哨的索引(到Python沒有呼叫)
cdef np.ndarray[DTYPE_t,ndim=3] array=np.ones((10000000,4,2))
cdef np.ndarray[DTYPE_t,ndim=2] sliced_array
cdef int i
cdef int N=array.shape[0]
for i in range(N):
sliced_array=array[i]
#perform computations on slice
。當我看到生成的HTML通過Cython,它看起來像是在調用Python時它正在做sliced_array=array[i]
我想這是因爲它推斷了另外兩個尺寸的大小,但即使使用第二和第三軸的輸入範圍,這行仍然是黃色的!
sliced_array=array[i,typed_slice_x,typed_slice_y]
我沒有使用Cython,但'slice'是一個Python內置函數,這可能會導致問題。 –
你是什麼意思? – jean
嘗試重命名該變量。 –