Python 复制是如何在努比发生的

Python 复制是如何在努比发生的,python,numpy,Python,Numpy,在链接上 有一种说法, 无法表示给定一个步长的数组c和给定一个步长的内存块。因此,重塑操作需要在此处进行复制 这个副本在numpy内部是如何工作的?它的时间复杂性是什么? numpy是如何知道进一步的数组不能用同一个数组表示的 如果一个数组有两个维度,形状为sh0和sh1,步幅为st0和st1,您希望将其合并到形状的单个维度sh0*sh1,则无需复制就可以这样做的条件是st0==sh1*st1。请注意,尺寸在形状中出现的顺序是相关的,在具有正步长的C顺序数组中,尺寸0位于尺寸1之前 有些情况可

在链接上

有一种说法,

无法表示给定一个步长的数组c和给定一个步长的内存块。因此,重塑操作需要在此处进行复制

这个副本在numpy内部是如何工作的?它的时间复杂性是什么?
numpy是如何知道进一步的数组不能用同一个数组表示的

如果一个数组有两个维度,形状为
sh0
sh1
,步幅为
st0
st1
,您希望将其合并到形状的单个维度
sh0*sh1
,则无需复制就可以这样做的条件是
st0==sh1*st1
。请注意,尺寸在形状中出现的顺序是相关的,在具有正步长的C顺序数组中,尺寸
0
位于尺寸
1
之前


有些情况可能需要更精细的分析,如果您使用Fortran顺序数组或负步长,那么需要乘以哪个步长和形状来比较哪个步长,但基本前提仍然基本相同。

numpy如何知道进一步的映射是不可能的,现在将数据复制到另一个数组中?