我正在开发一个我需要跨平台的应用程序。我想使用Python,我正在寻找GUI工具包,使界面编程简单易行。经过一次轻微的打猎,我找到了PythonCard。这看起来很完美,但我不确定是否可以将其编译为适合每个操作系统的可执行文件。我找到了these说明,但他们已经6岁了。
无论我选择何种解决方案,都必须支持以下内容:
在我不得不涉足荒凉的Java世界之前,有人可以推荐一个库/解决方案吗?
答案 0 :(得分:4)
使用PyInstaller使用PyQt或WxPython gui工具包分发应用程序。来自网站:
PyInstaller是一个程序,可以在Windows,Linux和Mac OS X下将Python程序转换(打包)成独立的可执行文件。
对于gui工具包,PyInstaller is documented可以使用Qt3,Qt4和WxPython。
StackOverflow贡献者dF,uses PyInstaller“用于依赖于PyQt,PyQwt,numpy,scipy等等的应用程序。”
答案 1 :(得分:4)
我认为这里的答案不是关于特定的GUI工具包,而是关于分发独立的python应用程序的更多信息。就我个人而言,我发现这方面的工具不如我想要的那么完美,但经过一番调查,他们完成了工作。最符合您需求的候选人是cx_Freeze。虽然如果cx_Freeze不足,有特定于Windows的py2exe和Mac特定的py2app可能会填补这笔费用。
答案 2 :(得分:0)
嗯。
也许最好将我的帖子移到评论中,但是。为什么要“编译”python代码,为什么你认为某些GUI框架应该提供一些打包/安装工具?
在我们公司,我们编写了跨平台的GUI应用程序,当然我们必须为客户轻松交付。因此,我们找到了合适的GUI框架和python绑定(Qt),然后我们选择了隐藏不需要的实现细节和消除依赖性的方法(Py2Exe for Windows,Py2App for Mac,什么都没有linux,但你可以试试PyInstaller或cx-冻结)。
根据最不惊讶的原则,按照该操作系统的方式安装每个操作系统。这就是为什么我们没有将linux版本打包成某种二进制可执行文件。
答案 3 :(得分:0)
如果您希望您的应用程序看起来和感觉都是原生的,那么wxPython就是您的选择。 PyQt可以看起来很原生,但听起来并不总是以本机方式表现(根据我读过的一些帖子)。要构建二进制文件,请使用py2exe或其他一些用于Windows和py2app for Mac
答案 4 :(得分:0)
This presentation完成整个过程,最后还是Py2exe和Py2app ......
答案 5 :(得分:0)
对于Wxpython GUI设计者check this question。我简单地尝试过boa-contstructor,但我发现它太有限了 - 因为并非所有小部件都受支持。 AFAIK没有wxpython设计师支持所有小部件(开箱即用)。
我个人觉得手动编写GUI的速度更快更容易。我说我只花了几天才能变得相当舒适/熟悉wxpython。如果您需要做任何其他事情,然后创建一个简单的应用程序,那么花一点时间来学习wxpython将支付其红利。
如果你想要拥有一个下降GUI设计师,那么你最好的选择就是可能是PyQt,因为这个恕我直言是唯一一个拥有坚实成熟编辑器的工具包 - Qt Designer
至于创建独立的excutables我只使用py2exe用于windows。 py2app为mac做同样的事情,尽管我还没有尝试过。
对于Windows安装程序结帐this thread