How can I create a directly-executable cross-platform GUI app using Python?Python可以在多个平台上运行,可以用于桌面和Web应用程序,因此我得出结论,有一些方法可以将它编译成Mac,Windows和Linux的可执行文件。 问题是我不知道从哪里开始或如何用它来编写GUI,任何人都可以对此有所了解并指出我正确的方向吗? 首先,您将需要一些带有Python绑定的GUI库,然后(如果您需要)一些程序将您的python脚本转换为独立的可执行文件。 具有Python绑定的跨平台GUI库(Windows,Linux,Mac) 当然,有很多,但我在野外看到的最受欢迎的是:
完整列表位于http://wiki.python.org/moin/GuiProgramming 单可执行文件(所有平台)
单个可执行文件(Windows)
单个可执行文件(Linux)
单个可执行文件(Mac)
另一个系统(尚未在接受的答案中提及)是PyInstaller,当py2exe不能时,它可以用于我的PyQt项目。我发现它更容易使用。 http://www.pyinstaller.org/ Pyinstaller基于Gordon McMillan的Python安装程序。哪个不再可用。 py2exe的另一个工具是bbfreeze,它为windows和linux生成可执行文件。它比py2exe更新,可以很好地处理鸡蛋。我发现如果没有配置适用于各种各样的应用程序,它会神奇地工作。 还有PyGTK,它基本上是Gnome Toolkit的Python包装器。我发现比Tkinter更容易包围我,因为之前几乎不了解GUI编程。它工作得很好,并有一些很好的教程。不幸的是,还没有适用于Windows的Python 2.6安装程序,可能暂时还没有。 由于现在默认情况下几乎每个非Windows操作系统都安装了python,因此您唯一需要确保的是安装了所有非标准库。 话虽如此,可以构建包含python解释器的可执行文件,以及您使用的任何库。但是,这可能会创建一个大型可执行文件。 MacOS X甚至包括Xcode IDE中的支持,用于创建完整的独立GUI应用程序。这些可以由运行OS X的任何用户运行。 对于GUI本身: PyQT几乎是参考。
开发快速用户界面的另一种方法是编写Web应用程序,
另外,如果你选择lubos hasko建议的Tkinter选项 我不确定这是最好的方法,但是当我在Windows上部署Ruby GUI应用程序(不是Python,但就.exe而言有相同的"问题")时,我只写了一个C#中的短发射器调用我的主脚本。它编译成可执行文件,然后我有一个应用程序可执行文件。 PySimpleGUI包装tkinter并适用于Python 3和2.7。它还可以在Qt,WxPython和Web浏览器中运行,对所有平台使用相同的源代码。 您可以使用在tkinter中找到的所有相同小部件(滑块,复选框,单选按钮等)制作自定义GUI。代码往往非常紧凑和可读。
如PySimpleGUI文档中所述,要构建运行的.EXE文件:
py2exe 然后你应该使用py2exe,例如,引入一个文件夹运行应用程序所需的所有文件,即使用户在他的电脑上没有python(我说的是windows ...对于苹果os,没有必要我认为,一个可执行文件,因为它带有python而不需要安装它。 创建此文件 1)创建setup.py 使用此代码:
将其保存在文件夹中
2)将您的程序放在setup.py的同一文件夹中 ps:更改文件的名称(从l4h到你想要的任何东西,这是一个例子)
3)从该文件夹运行cmd(在文件夹上,右键单击+ shift并在此处选择start cmd) Pyinstaller 从cmd安装它 **
** 从文件所在的文件夹中的cmd运行它 **
** 您不需要为Mac / Windows / Linux编译python。它是一种解释型语言,因此您只需要在您选择的系统上安装Python解释器(它可用于所有三个平台)。 对于跨平台工作的GUI库,Python的Tk / Tcl小部件库运行良好,我相信是足够的跨平台。 Tkinter是Tk / Tcl的python接口 从python项目网页:
您可以使用
请参阅appJar网站上的文档。
使用命令行中的 |