[python]从零开始的PySide安装配置教程
一、PySide是什么?
PySide 是 Qt for Python 项目的一部分,它提供了与 PyQt 类似的功能,使开发者能够使用 Python 编程语言来构建基于 Qt 的图形用户界面 (GUI) 应用程序。PySide 是由 Qt 公司官方维护的,而 PyQt 则是由第三方开发的。
PySide 支持多个平台,包括 Windows、macOS、Linux 等,这意味着你可以编写一次代码,然后在不同的操作系统上运行。这使得 PySide 成为开发桌面应用程序的强大工具。
Qt 是一个功能强大的 C++ GUI 框架,而 PySide 为 Python 提供了与 Qt 交互的接口。你可以使用 Qt 中的几乎所有组件,如窗口、小部件、布局、图形、动画等,来构建复杂的图形界面应用。
PySide 和 Qt 框架本身一样,都是高度面向对象的。这使得 GUI 设计更为灵活,可以轻松扩展和修改代码。PySide 提供了对 Qt 中所有类和功能的访问,因此开发者可以利用 Qt 的丰富功能,比如信号与槽机制。
PySide 提供了广泛的模块支持,涵盖了图形用户界面、图形渲染、多媒体、网络、数据库等常用开发功能。
简单点来说,PySide是一款QT官方支持的基于Python构建用户程序的框架。我们能够使用PySide高效的构建图形化用户程序并且生成python代码,下面我们就来详细了解一下PySide的安装和配置吧!
二、PySide的安装准备
在正式开始安装PySide之前,我们需要进行一些准备。因为PySide是基于Python,所以我们首先需要有Python或者Python的虚拟环境。后面这两种方式我都会演示,如果你还不会安装Python或者Python的虚拟环境,可以参考下面的文章:
Python的安装:[python]我们应该如何正确的安装和卸载python?(详细)_卸载python重新安装-CSDN博客
Python虚拟环境的安装:[python]我们应该如何安装Miniconda虚拟环境?(详细)_miniconda创建虚拟环境-CSDN博客
这里我们使用的虚拟环境主要是Conda。在后续的演示中,也会用Conda和直接安装的Python进行演示。后面也会有安装Python的步骤,但是不会很详细,如果你是新手,请查看上面的文章来安装Python。
我们还需要准备一个IDE用来快捷的编辑PySide生成的文件以及快捷的调用PySide中提供的工具。这里可以选择VS code或者Pycharm,下面的教程中我会使用Pycharm进行演示,如果你还不会安装Pycharm可以参考下面的教程:
pycharm安装教程:[python]我们应该如何正确的安装和汉化pycharm,并且导入开发环境?_python汉化-CSDN博客
当你安装好pycharm后就可以开始安装PySide了。
三、PySide的安装
下面我会演示如何在系统的Python中和在conda的虚拟环境安装PySide。下面我们分情况讨论:
1.在系统Python中安装PySide
既然我们要在系统的Python中安装PySide,我们首先就要在系统中安装一个Python。下面是一个简略的Python安装步骤,如果你想看详细的Python安装教程还请看上面的Python安装教程。
我们现在系统中安装Python,去到Python的官网下载Python的安装包,这里我选择的是Python3.9:
我们将其下载到一个我们能找到的文件夹中:
下载好以后,双击这个应用程序安装:
这里大家要和我勾得一样,不然有的包不会安装,安装前自己修改一下路径:
等待安装完成即可:
出现下面的界面就表示Python就已经安装成功了:
在Python安装成功以后,我们可以在终端中输入python来测试一下:
如果这里出现版本号,那么Python的安装就是正常的。
下面我们就可以来安装PySide了。这里我们使用pip工具直接安装即可。大家可以在终端中输入“pip list”来检查自己的pip版本:
这里可以看到,我的pip版本是21.2.4,如果你的python版本不同,可能对应的pip版本也不同。如果你输入“pip list”提示你这是外部命令或者命令找不到,那你可能需要检查一下安装时有没有将pip勾上。当然,在安装时没有勾上pip导致现在pip无法使用其实也有别的办法,我们可以直接在终端中输入下面得命令安装pip:
python -m ensurepip --default-pip
如果安装成功了,会收到下面的提示:
当你安装成功以后,再使用“pip list”命令应该就能查询到pip的版本了。
使用下面的命令更新pip,我们需要将pip更新到一个比较新的版本,防止拉取库时出现报错:
python -m pip install --upgrade pip
这里需要注意,大家如果使用的是官方源,可以使用代理来解决访问慢的问题,如果大家使用的是国内源,请关闭代理,如果代理开着是很容易报错的。
如果你使用官方源下载很慢,但是你又不会使用代理,可以使用下面的命令将pip的源换为国内源:
# 清华源
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
# 换回默认源
pip config unset global.index-url
在我们将pip更新完成以后就可以进行下一步了。当然,这里也可以不更新,不更新的话出问题的概率会大些。
我们使用下面的命令来安装PySide:
pip install PySide6
注意,这里的6不能省略,如果我们将这里的6省略,pip会默认安装老版本的PySide,因为我们用的是新版本的Python,如果使用老版本的PySide,就会报错。
可以看到,这里已经提示我们,已经安装好了,并且安装了很多包:
我们使用“pip list”来查看一下已经安装的包,发现PySide已经在其中了:
至此,在系统中的Python安装PySide就已经完成了。下面我会讲解如何在conda环境中安装PySide,如果不想看的话,可以直接跳到后面的配置阶段。
2.在虚拟环境中安装PySide
这里我们使用的虚拟环境主要是Conda的虚拟环境,因为虚拟环境的安装非常简单,这里我就不多说的。如果你还不会安装Conda或者是还不会Conda的基本操作,建议看下面的文章:
Conda的安装及基本使用:[python]我们应该如何安装Miniconda虚拟环境?(详细)_miniconda创建虚拟环境-CSDN博客
当我们安装好Conda后就可以进行下一步了,这里我们打开Conda的Powershell命令行:
在Conda启动以后,我们就可以创建一个虚拟环境了:
使用下面的命令创建Conda的虚拟环境,这里我们创建一个名为“PySide”的虚拟环境:
conda create --name pyside python=3.9
在创建好虚拟环境后,我们使用下面的命令进入虚拟环境:
conda activate pyside
进入虚拟环境以后,我们同样可以使用“pip list”来查看已经安装的软件包:
我们在虚拟环境中,同样使用下面的命令安装PySide:
pip install PySide6
这里的6同样的不能省略。
在安装完成以后,我们同样使用“pip list”来查看已经安装的包:
这里可以看到PySide已经安装成功了。
至此,我们在虚拟环境中安装PySide就已经完成了。
四、在Pycharm中配置PySide
经过了上面的步骤,我们的PySide就已经安装成功了。下面,我们会教大家怎么将我们安装的PySide配置到Pycharm中,同样的,这里不管你是在系统中的Python环境安装的PySide还是在虚拟环境中安装的PySide都我都会讲,既然是在Pycharm中配置,那么我们首先就需要安装Pycharm,如果你还没有或者不会安装Pycharm可以参考下面的文章:
安装和汉化Pycharm:[python]我们应该如何正确的安装和汉化pycharm,并且导入开发环境?_python汉化-CSDN博客
1.在Pycharm中配置系统Python环境中的PySide
这里我们首先启动我们的Pycharm:
下面,我们将我们系统中的Python环境导入Pycharm,当然,详细的配置教程在Pycharm的安装教程中就已经讲得很详细了,这里简单的讲一下,如果你还不会配置的话,就去看上面的Pycharm的安装和配置教程吧。
我们首先新建一个项目,如图:
我们再为这个项目添加解释器:
这里我们点击“添加解释器”:
再点击“添加本地解释器”:
这里点击“系统解释器”:
然后把我们安装在系统中的Python的路径中的“python.exe”选中进来:
这里可以看到,我们的系统解释器的路径已经出现在,这里了,之后的窗口一路确定即可:
在这里可以看到,我们添加了解释器以后,我们安装的python库也显示在这里了:
我们在我们的项目中新建一个.py的文件,名字可以随意,我们在这个.py的文件中输入下面的测试代码:
import sys
from PySide6.QtWidgets import QApplication, QFrame
from PySide6.QtCore import QCoreApplication, QMetaObject # 添加 QMetaObject 导入
class Ui_Frame(object):
def setupUi(self, Frame):
if not Frame.objectName():
Frame.setObjectName(u"Frame")
Frame.resize(400, 300)
self.retranslateUi(Frame)
QMetaObject.connectSlotsByName(Frame) # 确保 QMetaObject 正确导入
def retranslateUi(self, Frame):
Frame.setWindowTitle(QCoreApplication.translate("Frame", u"Frame", None))
if __name__ == "__main__":
app = QApplication(sys.argv)
frame = QFrame()
ui = Ui_Frame()
ui.setupUi(frame)
frame.show()
sys.exit(app.exec())
输入上面的代码以后,我们右键点击“运行”:
代码运行以后,应该会弹出一个小窗口,如图,当然,我这里的窗口是黑色的,你的可能是白色的。当然,只要弹出了就表示PySide是安装成功的:
当然,如果你在运行代码以后,没有弹出小窗口,并且还伴随着报错。那可能就要考虑一下是不是PySide没有正常安装,检查自己安装的是不是PySide6。可以根据报错信息来分析问题。
当我们确定PySide是正常的以后,我们就可以将PySide相关的工具添加在Pycharm中,因为PySide相关工具在PySide安装时就已经安装好了,所以我们直接添加即可。我们可以打开Python的安装目录:
我们进入Python安装目录中的“Scripts”文件夹:
进来以后,我们可以看到非常多的.exe文件,其中也包括的PySide相关的exe,这些都是在PySide安装时被一同安装的工具:
当然,这么多工具我们不用全部添加,只需要添加三个即可,这里我们要往Pycharm中添加“pyside6-designer.exe”,“pyside6-rcc.exe”,“pyside6-uic.exe”:
下面,我们来分别介绍一下,这三个工具的作用:
pyside6-designer.exe:这是一个图形化界面设计工具,用于创建 Qt 界面布局。你可以拖放按钮、文本框等 GUI 元素来设计应用程序的界面,最后生成 .ui
文件
pyside6-rcc.exe:用于将 Qt 资源文件(如图像、样式表等)转换成 Python 代码。你可以将资源文件嵌入到应用程序中,生成的 Python 文件可以直接在应用中使用。
pyside6-uic.exe:这是 Qt UI 编译器,用于将 .ui
文件(由 pyside6-designer.exe
创建的文件)转换为 Python 代码。这样你就可以在 Python 项目中直接使用这些生成的界面代码,而无需手动编写界面布局。
了解了这些工具的路径以后,我们继续回到Pycharm中,我们再次点击设置:
再点击弹出的窗口中的“工具”中的“外部工具”:
我们点击+号:
我们现在就可以将工具添加进来:
这里我们首先添加“pyside6-designer.exe”,这里就可以将名字写为“designer”当然,大家也可以自己写自己喜欢的名字:
这里的“描述”我们可以不填,下面的程序,我们将工具对应的路径添加进来:
这里“designer”实参不用填。
下面是工作目录是固定的,大家将下面的字符串填入即可:
$ProjectFileDir$
这样,我们“designer”工具就已经添加好了。
下面我们再添加“rcc”和“uic”工具。
rcc工具配置:
实参:
$FilePath$ -o $FileDir$\$FileNameWithoutExtension$_rc.py
工作目录:
$ProjectFileDir$
uic工具配置:
实参:
$FilePath$ -o $FileDir$\$FileNameWithoutExtension$_ui.py
工作目录:
$ProjectFileDir$
这里我们就已经将三个工具添加完成了:
我们在添加完成以后,就可以看到,在顶部的选项栏中的工具选项下的“外部工具”中已经有我们添加的三个工具了:
下面我们来测试一下,我们点击外部工具中的“designer”启动“designer”:
如果你配置都和我一样的话,那么你在启动“designer”后就能看到下面的界面了,当然,你的界面可能是白色的:
我们这里点击一个窗体:
因为现在只是测试,我们只需要添加一个窗体查看效果,我们现在就可以点击图中所示的图标保存了:
我们这里就保存在项目目录下:
我们回到Pycharm中,可以看到这里的.ui文件就已经添加进来了:
我们对着这个生成的.ui文件右键,再点击外部工具:
我们这里使用“uic”工具对文件进行转换:
转换完成以后,我们就可以看到这里的.py已经生成了:
Pycharm以后,我们就可以看到,我们的.py文件就已经生成了:
这里能生成代码,就表示PySide已经安装成功,并且相关的工具都已经导入了。
2.在Pycharm中配置虚拟环境中的PySide
我们首先在Pycharm中将虚拟环境配置进去,当然,在上面的Pycharm中有详细的Pycharm中配置虚拟环境教程,如果你不是特别熟悉,可以参考上面的教程。我们首先启动Pycharm:
我们同样的新建一个项目:
我们同样为这个项目配置一个解释器,这里解释器我们就要选择虚拟环境了:
这里我们点击“添加解释器”:
随后点击“添加本地解释器”:
这里选择Conda环境:
我们点击这个文件夹的图标加载Conda的可执行文件:
Conda的可执行文件在Conda的安装路径的"condabin"目录下的一个名为“conda.bat”的文件:
选中Conda的可执行文件以后,我们点击“加载环境”:
我们这里选择“使用现有环境”:
我们可以看到我们一开始创建的PySide的虚拟环境。我们将我们一开始的环境选入,点击确定,一路确定下去。
我们可以使用下面的测试代码进行测试:
import sys
from PySide6.QtWidgets import QApplication, QFrame
from PySide6.QtCore import QCoreApplication, QMetaObject # 添加 QMetaObject 导入
class Ui_Frame(object):
def setupUi(self, Frame):
if not Frame.objectName():
Frame.setObjectName(u"Frame")
Frame.resize(400, 300)
self.retranslateUi(Frame)
QMetaObject.connectSlotsByName(Frame) # 确保 QMetaObject 正确导入
def retranslateUi(self, Frame):
Frame.setWindowTitle(QCoreApplication.translate("Frame", u"Frame", None))
if __name__ == "__main__":
app = QApplication(sys.argv)
frame = QFrame()
ui = Ui_Frame()
ui.setupUi(frame)
frame.show()
sys.exit(app.exec())
我们右键然后运行,可以看到一个测试窗口:
如果能看到这个窗口的话,我们的虚拟环境中的PySide就配置成功了。
下面我么还能来配置在虚拟环境中PySide的相关工具,这里我们同样只需要三个工具,它们被放在了Conda安装目录下的“envs\pyside\Scripts”目录下,这里的env目录就是我们存放虚拟环境的地方,我们所有的虚拟环境文件夹都被放在了env目录下。这里我们进入我们安装了PySide的虚拟环境的相关文件夹,当然,这里如果你的虚拟环境名和我不一样,这里的路径也不一样:
这里这些工具的导入方式和上面的系统环境的Python是一样的,这里就简单的演示一下:
这样我们就将PySide的相关工具配置进来了。
大家这里可以使用上面的测试方法进行测试,如果你还不会导入PySide的相关工具或者不会测试是否导入成功,可以参考“4.1”,在4.1中说得非常详细。
五、结语
这次,我们在Pycharm中分别配置了系统环境中和虚拟环境中得PySide。本次得配置应该是非常简单得,如果大家看了教程仍有疑惑的话,可以考虑多看几遍,看看教程中得细节部分,如果是跟着我操作的话,应该是不会有错误的。最后,感谢大家观看!