【发布时间】:2010-09-17 07:57:04
【问题描述】:
我想知道是否可以从 Python 脚本创建可执行模块。我需要拥有 Python 脚本的最大性能和灵活性,而不需要在 Python 环境中运行。我将使用此代码按需加载用户模块来自定义我的应用程序。
【问题讨论】:
标签: python module compilation
我想知道是否可以从 Python 脚本创建可执行模块。我需要拥有 Python 脚本的最大性能和灵活性,而不需要在 Python 环境中运行。我将使用此代码按需加载用户模块来自定义我的应用程序。
【问题讨论】:
标签: python module compilation
【讨论】:
我使用Cython 取得了很大的成功,它基于并扩展了 pyrex:
Cython 是一种使 为 Python 编写 C 扩展 像 Python 本身一样简单的语言。 Cython 基于众所周知的 Pyrex,但支持更多前沿 功能和优化。
Cython 语言非常接近于 Python 语言,但 Cython 另外支持调用C 函数和声明 C 类型 变量和类属性。这 允许编译器生成非常 来自 Cython 代码的高效 C 代码。
这使得 Cython 成为理想的语言 用于包装外部 C 库, 以及用于加速的快速 C 模块 Python代码的执行。
【讨论】:
我认为你可以使用 jython 将 python 编译为 Java 字节码,然后使用 GCJ 进行编译。
【讨论】:
您可以使用 py2exe 之类的工具将您的 python 脚本编译为 exe,或者使用 Freeze 来编译 linux 二进制文件。
见:How can I create a directly-executable cross-platform GUI app using Python?
【讨论】: