擅长:python、mysql、java
<p>这里有一个更好的方法:<a href="https://github.com/pydata/numexpr" rel="noreferrer">numexpr</a></p>
<p>从他们的主页上稍作修改:</p>
<p>这是一个用C编写的多线程VM,它可以分析表达式,更有效地重写它们,并将它们快速编译成代码,从而使内存和cpu受限操作的并行性能接近最佳。</p>
<p>例如,在我的4核机器中,计算正弦比numpy快4倍。</p>
<pre><code>In [1]: import numpy as np
In [2]: import numexpr as ne
In [3]: a = np.arange(1000000)
In [4]: timeit ne.evaluate('sin(a)')
100 loops, best of 3: 15.6 ms per loop
In [5]: timeit np.sin(a)
10 loops, best of 3: 54 ms per loop
</code></pre>
<p>文档,包括支持的函数<a href="https://numexpr.readthedocs.io/en/latest/" rel="noreferrer">here</a>。你必须检查或者给我们更多的信息,看看你更复杂的函数是否能被numexpr计算。</p>