网站百度排名怎么做快,应用商店优化,工装公司怎么找,网页教程在线用 Python 语言开发图形界面的程序#xff0c;有2种选择#xff1a; Tkinter 基于Tk的Python库#xff0c;这是Python官方采用的标准库#xff0c;优点是作为Python标准库、稳定、发布程序较小#xff0c;缺点是控件相对较少。 PySide2/PySide6 基于Qt 的Python库#x…用 Python 语言开发图形界面的程序有2种选择 Tkinter 基于Tk的Python库这是Python官方采用的标准库优点是作为Python标准库、稳定、发布程序较小缺点是控件相对较少。 PySide2/PySide6 基于Qt 的Python库优点是控件比较丰富、跨平台体验好、文档完善、用户多。 缺点是 库比较大发布出来的程序比较大。
如果是开发小工具界面比较简单可以采用Tkinter。 如果是发布功能比较多的正式产品采用基于Qt的 PySide2/PySide6 。
本文介绍的是使用 PySide2 开发Python程序的图形界面。
安装 PySide2
pip install pyside2也可以指定国内的安装源下载速度更快。
pip install pyside2 -i https://pypi.douban.com/simple/Python 3.11 不能安装 PySide2可以安装PySide6 如果要安装 PySide2只能使用 Python 3.10 或者更早的 Python版本。 PySide2官方文档 https://doc.qt.io/archives/qtforpython-5.12/PySide2/QtWidgets/index.html#module-PySide2.QtWidgets
一、PySide2安装完成后在python安装目录下Scripts文件夹运行pyside2-designer.exe进入图形设计。 保存图形界面生成 login.ui 文件前缀可以自定义
二、把 .ui 文件转换成 .py 文件供python程序调用
执行命令 pyside2-uic login.ui login_ui.py 把UI文件转化为包含界面定义的Python代码文件具体步骤如下
把login.ui文件复制到python目录Scripts文件夹在空白处按着shift 右击鼠标选择【在此处打开命令窗口】。 运行命令后没有报错说明正确生成了py文件。 把login_ui.py文件复制到python项目以方便调用。
三、调用login_ui.py 以及编写逻辑代码
import sys
from PySide2.QtWidgets import QApplication, QMainWindow
# 导入login_ui.py 文件 Ui_MainWindow 类
from login_ui import Ui_MainWindow# 注意 这里选择的父类 要和你UI文件窗体一样的类型
# 主窗口是 QMainWindow 表单是 QWidget 对话框是 QDialog
class MainWindow(QMainWindow):def __init__(self):super().__init__()# 使用ui文件导入定义界面类self.ui Ui_MainWindow()# 初始化界面self.ui.setupUi(self)# 调用自定义方法self.ui.pushButton_login.clicked.connect(self.handleCalc)self.ui.pushButton_exit.clicked.connect(self.eixtSys)def handleCalc(self):# 利用lineEdit控件对象text()函数获取界面输入username self.ui.lineEdit_user.text()password self.ui.lineEdit_pwd.text()# 利用textEdit控件对象setText()函数设置界面显示self.ui.textEdit_list.setText(登录成功!\n 用户名是: username \n密码是 password)def eixtSys(self):sys.exit()app QApplication([])
mainw MainWindow()
# 将窗口控件显示在屏幕上
mainw.show()
# 程序运行sys.exit方法确保程序完整退出。
sys.exit(app.exec_()) 运行代码
四、使用Pyinstaller转换.py文件为.exe可执行程序
pyinstaller其实就是把python解释器和脚本打包成一个可执行文件和编译成真正的机器码是完全两回事。所以打包不一定会提高运行效率可能会降低运行效率但是好处是在运行者机器上不用安装python和脚本所依赖的库。
输入指定的脚本后首先pyinstaller会分析该脚本所依赖的其他依赖然后进行查找、复制把所有相关的依赖都收集起来并惊醒加密处理包括python解释器最后把这些文件放在一个目录下或者打包到一个可执行文件。然后就可以直接运行所生成的可执行文件。
使用pyinstaller打包生成的可执行文件只能在和打包机器系统相同的环境下运行。32位python环境打包的程序可以运行在32/64位windows系统上。64位python环境打包的程序只能运行在64位windows系统上。所以如果想打包程序的话建议使用32位python环境打包。
注意事项 1、待转换的.py文件绝对路径最好不要包含中文字符不然容易出现一些莫名其妙的问题。 2、python中需要有.py文件中用到的第三方库。否则在转换后的.exe文件中会出现不符合预期的结果。
安装pyinstaller库打开cmd命令行窗口输入pip install pyinstaller where pyinstaller 命令查看安装路径 在项目内打开CMD 运行命令 pyinstaller -F QT2.py -w
可执行文件在 dist 目录
pyinstaller 实例说明
pyinstaller -F myScript.py -w参数区分大小写
-F 表示生成单个可执行文件常用。
-w 小写 表示去掉控制台窗口这在GUI界面时非常有用。不过如果是命令行程序的话那就把这个选项删除吧
-p 小写 表示你自己自定义需要加载的类路径一般情况下用不到。
-i 表示可执行文件的图标。注意:图片后缀必须是.ico-c,console,-nowindowed:使用控制台无窗口默认
-D 创建一个目录包含EXE文件但会依赖很多文件默认选项。使用问题 1、如果Python脚本使用到了第三方库如何打包 方法一将第三方库对应的包复制到待打包python脚本的同目录下再执行打包命令。方法二pyinstaller -F 路径\文件名.py 路径\文件名.py 2、我的python脚本主要是命令行输出但是程序执行完就退出无法查看相关信息如何处理
在python脚本最后一行添加命令
os.system(pause) 或者 raw_input(Press enter any key to exit...)3、 我想给我的打包后的执行程序换个图标如何处理 使用参数-i pyinstaller -F -i tupian\qq.ico myScript.py 图标文件后缀名必须是.ico4、程序运行出现CMD窗口如何去除 带上参数-w pyinstaller -F myScript -w