我想知道使用b = np.array(a)而不是b = np.copy(a)将Numpy数组复制a到b中是否有任何缺点.当我%timeit,前者可以快100%.
在这两种情况下b is a是False的,我可以操纵b留下a完整的,所以我想这个做什么是由预期.copy().
我错过了什么吗?使用np.array复制数组有什么不妥之处?
使用python 3.6.5,numpy 1.14.2,而速度差异因较大尺寸而迅速关闭:
a = np.arange(1000)
%timeit np.array(a)
501 ns ± 30.1 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)
%timeit np.copy(a)
1.1 µs ± 35.7 ns per loop (mean ± std. dev. of 7 runs, 1000000 loops each)
Run Code Online (Sandbox Code Playgroud)