【问题标题】:Does PY2EXE Compile a Python Code to run Faster?PY2EXE 是否编译 Python 代码以更快地运行?
【发布时间】:2012-08-21 14:08:46
【问题描述】:

我真的很喜欢 PY2EXE 模块,它真的可以帮助我与其他同事共享脚本,让他们超级容易使用。

我的问题是:当PY2EXE模块将代码编译成可执行文件时,生成的可执行文件处理速度会更快吗?

感谢您的回复!

【问题讨论】:

  • 你试过计时吗? :-)
  • 并不比我想象的运行已编译的 python 快。

标签: python exe py2exe


【解决方案1】:

py2exe 只是将 Python 解释器和所有需要的库捆绑到可执行文件和一些库文件中。当您运行可执行文件时,它会使用捆绑的解释器来运行您的脚本。

由于它实际上并不生成本机代码,因此执行速度应该大致相同,可能会因为打包所有内容的开销而变慢。

【讨论】:

  • 我做了一些测试,看来你是对的。 PY2EXE 仍然非常适合编译 python 以在任何计算机上运行,​​但我真的希望它也能加快代码速度。哦,好吧,我想我接下来会尝试 cython!
  • @CodyBrown - 您应该检查代码中的实际速度。像 numpy 这样的库在实际操作中使用了非常优化的 C,并且通常比您自己编写的 C 代码要快。
【解决方案2】:

在某种程度上,它将 python 环境与“预编译”pyc 文件捆绑在一起。这些已经 解析成 python 字节码,但它们不是本机速度可执行文件

【讨论】:

  • 请注意,仅导入代码对字节码的编译完全相同。即使没有,您也只会赢得一些(肯定很少,编译器很快)启动时间,因为在解析源代码时会发生相同的编译。
  • @delnan,是的,这是一个很小的胜利——这就是我说“部分”的原因
猜你喜欢
  • 2022-09-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-03-14
  • 2022-09-27
  • 2010-09-19
  • 1970-01-01
  • 2021-08-05
相关资源
最近更新 更多