【问题标题】:How does cx_freeze compile a Python script?cx_freeze 如何编译 Python 脚本?
【发布时间】:2014-06-27 03:48:28
【问题描述】:

cx_freeze 是否包含其自己的编译器,该编译器来自 Python -> 二进制文件?还是翻译它(例如翻译成 C),并编译翻译后的代码?

编辑:它似乎被编译为字节码。那么这是否意味着 cx_freeze exe 只是 Python 解释器的字节码 -> 二进制部分?

【问题讨论】:

    标签: python cx-freeze


    【解决方案1】:

    cx_Freeze 并没有真正编译您的代码。它实际上只是将您的 Python 代码与 Python 解释器打包在一起,因此当您启动应用程序时,它会设置一个 Python 解释器并开始运行您的 Python 代码。它具有从 Python 源代码或字节码运行所需的机制,但它主要将模块存储为字节码,因为这样可以更快地加载。

    像 Cython 和 Nuitka 这样的选项更进一步 - 它们将您的代码转换为 C 并将其编译为机器代码,但它们仍然使用 Python VM 机器。它只是调用 Python 功能的编译代码,而不是运行 Python 字节码的 VM。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2016-03-08
      相关资源
      最近更新 更多