擅长:python、mysql、java
<p>例如计算[0,9]中c的给定积分:</p>
<pre><code>[scipy.integrate.quadrature(lambda x: 2 * c * x, 0, 1)[0] for c in xrange(10)]
</code></pre>
<p>这是使用<a href="http://docs.python.org/tutorial/datastructures.html#list-comprehensions" rel="noreferrer">list comprehension</a>和<a href="http://docs.python.org/tutorial/controlflow.html#lambda-forms" rel="noreferrer">lambda functions</a>。</p>
<p>或者,可以将从给定c返回整数的函数定义为<a href="http://docs.scipy.org/doc/numpy/reference/ufuncs.html" rel="noreferrer">ufunc</a>(感谢<a href="http://docs.scipy.org/doc/numpy/reference/generated/numpy.vectorize.html" rel="noreferrer">vectorize</a>)。这也许更符合努比的精神。</p>
<pre><code>>>> func = lambda c: scipy.integrate.quadrature(lambda x: 2 * c * x, 0, 1)[0]
>>> ndfunc = np.vectorize(func)
>>> ndfunc(np.arange(10))
array([ 0., 1., 2., 3., 4., 5., 6., 7., 8., 9.])
</code></pre>