我定义了一个Fortran连续数组:
import numpy as np
hp = np.zeros([number_fragments, max(length_fragments_list), 6], order='F')
该数组的切片不是Fortran连续的。我该如何解决?
hn = hp[0,0:Length-1,:]
hn.flags
C_CONTIGUOUS : False
F_CONTIGUOUS : False
also
hn = hp[0,0:Length-1,:].copy()
hn.flags
C_CONTIGUOUS : True
F_CONTIGUOUS : False
切片后如何轻松获得Fortran连续数组?
最佳答案
您可以在片上应用numpy函数np.asfortranarray
来强制执行它,例如:
np.asfortranarray(hp[0,0:Length-1,:].copy())
关于python - Python numpy数组切片不是Fortran连续的,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/57927933/