Python Numpy索引分配是否保持连续性?
假设我有一个连续数组:Python Numpy索引分配是否保持连续性?,python,numpy,cython,Python,Numpy,Cython,假设我有一个连续数组: contiguous_array = np.ascontiguousarray(...) generic = np.array([10, 100, 1000]) 以及另一个不一定连续的数组: contiguous_array = np.ascontiguousarray(...) generic = np.array([10, 100, 1000]) 如果我这样做: indices = [0, 5, 10] contiguous_array[indices] =
contiguous_array = np.ascontiguousarray(...)
generic = np.array([10, 100, 1000])
以及另一个不一定连续的数组:
contiguous_array = np.ascontiguousarray(...)
generic = np.array([10, 100, 1000])
如果我这样做:
indices = [0, 5, 10]
contiguous_array[indices] = generic
连续的\u数组仍然是连续的吗?连续的\u数组将仍然是连续的。分配将数据复制到
连续数组的现有缓冲区中;它不会改变内存布局。不可能使连续数组不连续。当您创建了一个C_连续数组(x)之后,您创建了一个numpy数组,并通过选择索引替换了x的元素。
例:
但是这些步骤不会改变数组的类型,即C_Contigous数组
因此,不能将连续的_数组更改为非连续数组