擅长:python、mysql、java
<p>因为numpy将数组(默认情况下)存储在<a href="http://docs.scipy.org/doc/numpy/glossary.html" rel="nofollow">row-major order</a>中,按行设置值更有效。因此,我将使用:</p>
<pre><code>x=np.zeros(shape=(n_dim, 100000))
for j in range(0,n_dim):
x[j,:]=a*j
</code></pre>
<p>或者,您可以将<code>x</code>定义为列major,然后,这与前面的代码一样快:</p>
^{pr2}$
<p>您还可以使用numpy外部产品创建<code>x</code>:</p>
<pre><code>v = np.arange(n_dim)
x = np.outer(v, a)
</code></pre>