如何使用 Python 创建可直接执行的跨平台图形用户界面应用程序?

Python 可在多个平台上运行,可用于桌面和网络应用程序,因此我认为有办法将其编译成 Mac、Windows 和 Linux 的可执行文件。

问题是,我不知道从何入手,也不知道如何用它编写图形用户界面,请问有谁能给我指点迷津?

解决办法

首先,您需要一些与 Python 绑定的图形用户界面库,然后(如果您需要)还需要一些能将 python 脚本转换为独立可执行文件的程序。

与 Python 绑定的跨平台图形用户界面库(Windows、Linux、Mac)

当然,还有很多,但我见过的最流行的有以下几种:

完整列表见 http://wiki.python.org/moin/GuiProgramming

单个可执行文件(所有平台)

  • PyInstaller]9 - 最活跃的版本
  • fbs]10 - 如果您选择了上面的 Qt

单一可执行文件(Windows)

  • py2exe]11 - 曾经最流行

单个可执行文件(Linux)

  • Freeze]12 - 工作原理与 py2exe 相同,但针对 Linux 平台

单个可执行文件(Mac)

  • py2app]13 - 工作原理与 py2exe 相同,但针对 Mac 操作系统
评论(7)

由于现在几乎所有非 Windows 操作系统都默认安装了 python,因此您唯一需要确保的是,您使用的所有非标准库都已安装。

尽管如此,还是有可能生成包含 python 解释器和所有常用库的可执行文件。 不过,这可能会产生一个较大的可执行文件。

MacOS X 甚至在 Xcode IDE 中支持创建完整的独立 GUI 应用程序。 任何运行 OS X 的用户都可以运行这些应用程序。

评论(0)

对于 Mac/Windows/Linux,您不需要编译 Python。 Python 是一种解释型语言,因此您只需在自己选择的系统上安装 Python 解释器即可(这三种平台都可以使用)。

至于跨平台的图形用户界面库,Python 的 Tk/Tcl widget 库运行得非常好,而且我认为它足以跨平台。

Tkinter 是 Tk/Tcl 的 Python 接口

来自 python 项目网页:

Tkinter 并不是唯一的 GuiProgramming 工具包。 但它是 最常用的工具包,而且几乎是 唯一可在 Unix、Mac 和 Windows 之间可移植的工具包。

评论(6)