擅长:python、mysql、java
<p>编辑:</p>
<p><em>大多数</em><code>numpy</code>函数在数组上按元素运行。你想要的功能可以通过几种方式来实现。最简单的方法可能是将<code>testfn(k)</code>更改为以下内容:</p>
<pre><code># This already works element-wise on k.
# Numpy overrides the basic mathematical operators like +, -, *, /, **
# to be element-wise. Therefore `result` is an array the same length as k
# (Remember to use 1. so float division occurs!)
result = 1. / k**2
# result[k == 1] is equivalent to result[np.where(k == 1)]
# for this example, only the first element of k is equal to 1
# so the [k == 1] yields "index 0"
# therefore result[k == 1] yields only the first element of result
# once you've selected the appropriate elements of result, overwrite
# the values with whatever you like
result[k == 1] = 1
return result
</code></pre>
<p>现在您将始终获得从<code>testfn</code>返回的数组,并且您可以对该数组中的值进行细粒度控制。你知道吗</p>