Python如何实现图形化界面制作为桌面软件?
网友解答: 我觉得这个问题提的有点不清楚,从两个角度理解吧。1. Python图形化开发,我觉得第1个回答满对的,我再详细说说。2. Python程序打包,其实是第2个回答的内容,少了平
我觉得这个问题提的有点不清楚,从两个角度理解吧。
1. Python图形化开发,我觉得第1个回答满对的,我再详细说说。
2. Python程序打包,其实是第2个回答的内容,少了平台的限定,如果只是windows平台。下面详细说。
python图形化开发
PyQt是一个创建GUI应用程序的工具包。它是Python编程语言和Qt库的成功融合。Qt库是目前最强大的库之一。PyQt是由Phil Thompson 开发。PyQt实现了一个Python模块集。它有超过300类,将近6000个函数和方法。它是一个多平台的工具包,可以运行在所有主要操作系统上,包括UNIX,Windows和Mac。 PyQt采用双许可证,开发人员可以选择GPL和商业许可。在此之前,GPL的版本只能用在Unix上,从PyQt的版本4开始,GPL许可证可用于所有支持的平台。官网:Qt | Cross-platform software development for embedded & desktop
开发文档:Qt - 开发者
成品样例:
学习地方:
1、官方社区:Qt Forum
2、官方博客:Qt Blog - For Developers by Developers
3、PyQt4 tutorial
4、Archi - 博客园
5、PyQt - Woodpecker Wiki for CPUG
wxPython是Python语言的一套优秀的GUI图形库,允许Python程序员很方便的创建完整的、功能键全的GUI用户界面。 wxPython是作为优秀的跨平台GUI库wxWidgets的Python封装和Python模块的方式提供给用户的。就如同Python和wxWidgets一样,wxPython也是一款开源软件,并且具有非常优秀的跨平台能力,能够支持运行在32 /64位windows、绝大多数的Unix或类Unix系统、Macintosh OS X下官网:wxPython
开发文档:FrontPage - wxPyWiki
成品样例:
学习地方:
1、How to Learn wxPython
2、WxPython教程
3、wxPython的基础教程
Tkinter模块("Tk 接口")是Python的标准Tk GUI工具包的接口.Tk和Tkinter可以在大多数的Unix平台下使用,同样可以应用在Windows和Macintosh系统里.Tk8.0的后续版本可以实现本地窗口风格,并良好地运行在绝大多数平台中.官网:TkInter - Python Wiki
开发文档:FrontPage - Tkinter Wiki
成品样例:
学习地方:
1、python GUI编程(Tkinter)
2、Tkinter 8.5 reference: a GUI for Python
3、Python GUI编程(Tkinter)
4、【玩树莓】编程篇(五)Python下使用Tkinter 制作图形界面
5、pyhon之Tkinter实例化学习
6、Tkinter:图形用户界面编程
PySide是跨平台的应用程式框架Qt的Python绑定版本 。在2009年8月,PySide首次发布。提供和PyQt类似的功能,并相容 API。但与 PyQt 不同处为使用LGPL授权。官网:https://pypi.python.org/pypi/PySide/1.2.4 、 PySide - Qt Wiki
开发文档:PySide — PySide 1.2.4 documentation
学习地方:
1、GitHub - shuge/Qt-Python-Binding-Examples: Lots of simple and Pythonic PySide demos
2、GitHub - PySide/Examples: Python script examples adapted for PySide.
3、GitHub - PySide/PySide: This repository contains the CPython Qt bindings generated using the Shiboken generator.
4、Overview — PySide v1.0.7 documentation
Python 程序打包:
1、安装PyInstaller
PyInstaller的作用如标题所说,首先需要下载PyInstaller和UPX,UPX是用来压缩exe的,点击超链接下载吧,注意选择你使用的操作系统。如在Windows下,将下载解压后的upx.exe放到PyInstaller解压后的文件夹内。设PyInstaller的文件夹为D:PyInstaller,下同。命令行下进入D:PyInstaller,运行Configure.py,应该看到如下信息:
网友解答:你说的是将python开发的GUI程序(或py文件)打包成exe吧,目前来说有3种打包方式,分别是pyinstaller,py2exe,cx_Freeze,为了更好的说明这个问题,我以下面这段tkinter开发的GUI程序为例,简单介绍一下这3个包是如何打包GUI程序的,至于如何开发GUI程序,我这里不多讲,目前主要是tkinter,wxPython,PyQt这3个包,我的回答里面就有https://www.wukong.com/question/6514802855004602631/,可以参考一下,实验环境win7+python2.7+pycharm(python3一样),主要内容如下:
这里我新建了一个GUI_EXE.py文件,用python自带的tkinter开发,界面很简单,主界面就是一个Hello按钮,点击后弹出一个消息提示框,打印"Hello World!",这也是我们本次打包程序的主要对象,如下:
程序源码:
程序运行截图:
第一种方式:pyinstaller打包。下面,我主要介绍一下这个包的安装和基本打包命令:
1.首先,安装pyinstaller,这里很简单,直接输入命令pip install pyinstaller安装就行,如下图:
2.打包程序,我的GUI_EXE.py文件放在目录“F:pack”下边,所以打包命令是"pyinstaller -F -w f:packGUI_EXE.py",这里解释一下参数F和w,F是将程序打包成一个exe文件,没有那些一大堆dll文件,w是去掉控制台窗口,如下图:
3.默认生成的exe文件在"C:UsersAdministratordist"这个目录下边,如下,GUI_EXE.exe文件已经成功生成,双击便可运行:
第二种方式:py2exe打包。下面,我主要介绍一下这个包的安装和基本打包过程:
1.首先,下载py2exe。这里需要到官网进行下载,地址https://sourceforge.net/projects/py2exe/files/py2exe/0.6.9/,我这里是python2.7 64位的,所以选择如下版本,你可以根据自己版本进行调整选择:
2.下载完成后,因为是一个exe文件,直接双击就可以进行安装,安装程序会自动找到python的安装路径,我这里就不具体介绍安装过程了。
3.打包程序。这里需要新建一个setup.py文件,写入如下代码,这里为了方便,我省略了许多参数,其中console是你要打包的脚本名称:
4.setup.py文件完成后,将它移入"F:pack"目录,和GUI_EXE.py在一个目录下,打开一个cmd窗口,切换到"f:pack"目录,输入如下命令"python setup.py py2exe":
5.打包完成后,会在当前目录下边生成一个dist文件夹和bulid文件夹,进入dist文件夹,里面就有生成的GUI_EXE.exe文件,双击就可直接运行:
第三种方式:cx_Freeze打包。下面,我主要介绍一下这个包是如何安装和打包程序的,如下:
1.首先,安装cx_Freeze,这里直接用命令"pip install cx_freeze"安装就行,如下:
2.打包程序,这里也需要一个setup.py文件,输入如下代码,其中name是打包后生成的exe文件名字,version是版本号,description是描述,executables是你要打包的py程序:
3.setup.py文件完成后,将它移入"F:pack"目录,和GUI_EXE.py在一个目录下,打开一个cmd窗口,切换到"f:pack"目录,输入如下命令"python setup.py build":
4.打包完成后,会在当前目录下边生成一个build目录,生成的GUI_EXE.exe文件就在它里边,双击就可直接运行:
注意,为了避免看到cmd画面一闪而过,你可以在GUI_EXX.py文件尾部添加一行代码
input('请按任意键退出...'),这样就不会出现一闪而过的画面。
至此我们就完成了GUI程序的打包,不过来说,还是pyinstaller打包最简单,当然,这个也因人而异,只要能正常的打包程序都行,希望以上分享的内容能对你有所帮助吧。码字不宜,点个赞呗。