說我有幾個陣列,可能大小不同的:聲明numpy的陣列的列表/矢量/陣列在用Cython
A0 = rand(3,3)
A1 = rand(4,4)
在用Cython,我可以聲明它們的類型得到快速項目訪問:
cdef np.ndarray[double, ndim=2] A0
cdef np.ndarray[double, ndim=2] A1
不過,說我要通過索引來訪問它們:
A = (A0,A1)
A[0][2,1] += A[1][1,0]
不過,現在用Cython不知道的類型和A[1]
,這使訪問變慢。我不認爲Cython具有「類型元組」的概念。那麼我怎麼能聲明A
(或類似的對象),以便我仍然可以在上述表達式中快速訪問項目?
我懷疑最好的辦法就是將它們連接成一個三維陣列和零(或南)墊在大小不匹配的地方。我想不出明顯的更好的方式(但這並不意味着它不存在!) – DavidW