8

我有一个在 pypy 中运行的项目(并且已经比它的 python 对应物实现了很好的加速)。但是,我确实有一个功能的 Cython 实现,它比 pypy 版本快得多。所以我想包括这个功能。

问题是 pypy 似乎没有找到这个模块(即使 .so 与执行的 .py 脚本位于同一文件夹中):

ImportError: No module named foo

因此,pypy 是否支持 cython?谢谢。

4

1 回答 1

10

如果你想让 Cython 扩展在 PyPy 下可用,你必须重新编译它并在 PyPy 下重新安装它。我建议首先使用 virtualenv。但是,如果这纯粹是为了加速,我真的不鼓励你这样做。CPyext(CPython C API 仿真)真的很慢,你很可能最终会变慢。另一方面,优化的 Python 在 PyPy 下的运行速度应该与优化的 Cython(带类型)一样快。

干杯,菲亚尔

于 2013-01-07T18:57:04.280 回答