编译python代码和C ++代码一样快吗?

时间:2011-12-04 10:09:25

标签: python performance compiler-construction

如果我用Python编写程序,然后使用这些编译器中的任何一个编译它:

  

Gordon McMillan的安装程序(跨平台)

     

Thomas Heller的py2exe

     

(Windows)Anthony Tuininga的cx_Freeze(跨平台)

是否与用编译语言编写的代码一样快?

3 个答案:

答案 0 :(得分:14)

这些工具不是编译器,它们只是将python代码打包成更容易启动的应用程序。如果你想要更像编译的东西,请尝试http://pypy.org(JIT for python)或http://code.google.com/p/shedskin(将Python翻译成C ++)。

答案 1 :(得分:2)

为了提高速度,您可能还需要研究Cython,它允许以类似Python的语言编写Python的C扩展。

答案 2 :(得分:1)

Google最近发布了Grumpy,在编译之前将Python转换为Go。期望软件以这种方式运行得更快,并绕过臭名昭着的Python GIL,允许真正的多线程。

  

Grumpy是一个Python to Go源代码转换编译器和运行时   打算成为CPython 2.7的近乎替代品。钥匙   区别在于它将Python源代码编译为Go源代码   然后将其编译为本机代码,而不是字节码。这个   意味着Grumpy没有VM。编译后的Go源代码是一个系列   调用Grumpy运行时,Go库提供类似的用途   到Python C API(虽然不直接支持C API)。