创建向量z的最快方法,使z [i] = 1 /(1 + i)

时间:2012-10-09 18:49:45

标签: python numpy

我需要在numpy中创建一个向量z,使z [i] = 1 /(1 + i)。那么在下面的代码中有更快的方法吗?

import numpy as np
n = 10000
z = np.zeros(n)
for i in xrange(n):
    z[i] = 1.0/(1 + i)

2 个答案:

答案 0 :(得分:3)

最快的方式:

z = 1.0/np.arange(1, n+1)

答案 1 :(得分:0)

怎么样:

z = np.arange(n)
z = 1/(1+z)