擅长:python、mysql、java
<p>Cython本身是一个非常酷的工具,非常值得学习,并且与Python语法惊人地接近。如果你用Numpy做任何科学计算,那么Cython就是一种方法,因为它与Numpy集成用于快速矩阵运算。</p>
<p>Cython是Python语言的超集。您可以向它抛出任何有效的Python文件,它将弹出一个有效的C程序。在本例中,Cython将把Python调用映射到底层的CPython API。这可能会导致50%的加速,因为您的代码不再被解释。</p>
<p>要获得一些优化,您必须开始告诉Cython有关代码的其他事实,例如类型声明。如果你说得够多,它可以将代码归结为纯C,也就是说,Python中的for循环变成了C中的for循环,在这里你将看到巨大的速度提升。您也可以在这里链接到外部C程序。</p>
<p>使用Cython代码也非常简单。我觉得这本手册听起来很难。你真的只是:</p>
<pre><code>$ cython mymodule.pyx
$ gcc [some arguments here] mymodule.c -o mymodule.so
</code></pre>
<p>然后您可以在Python代码中<code>import mymodule</code>,完全忘记它可以编译成C</p>
<p>无论如何,因为Cython是如此容易设置和开始使用,我建议尝试看看它是否适合您的需要。如果它不是你要找的工具,那就不是浪费。</p>