擅长:python、mysql、java
<p>此方法可扩展到写入其他数组的对角线,即<code>a</code>不必是单位矩阵:</p>
<pre><code>>>> a = np.eye(5)
>>> L = [0.01, 0.02, 0.26, 0.03, 0.68]
>>> d = np.diag_indices_from(a)
>>> a[d] = L
>>> print(a)
[[ 0.01 0. 0. 0. 0. ]
[ 0. 0.02 0. 0. 0. ]
[ 0. 0. 0.26 0. 0. ]
[ 0. 0. 0. 0.03 0. ]
[ 0. 0. 0. 0. 0.68]]
</code></pre>
<p>还要注意,在numpy版本1.10+上,<code>np.diagonal(a)</code>实际上将返回一个可写的<em>视图</em>,该视图可用于修改原始数组。在</p>