我试图表明迭代NumPy数组比列表更快。我这样做是通过创建一个零数组并在其上循环以递增每个元素,并通过使用.append()构建一个零列表,然后再次循环它以增加每个元素。在我看来,阵列在这里肯定会更快,但它只会慢2倍!我的代码是:
import numpy as np
import time
N = 10000
# Check array
start = time.time()
arr = np.zeros(N, dtype = int)
for x in range(N):
arr[x] += 1
end = time.time()
print("Array op took {} seconds".format(end - start))
# Check list
start = time.time()
ls = []
for x in range(N):
ls.append(0)
for element in ls:
element += 1
end = time.time()
print("List op took {} seconds".format(end - start))
这里出了什么问题?我认为NumPy阵列应该更快,我错了吗?
澄清w.r.t.重复标志,另一个问题没有讨论NumPy数组的遍历,只是它的重复实例化。它也是关于小型NumPy阵列,而不是大型阵列。