在这篇文章中,你将了解到顶级的Python GUI框架,如何使用它们,以及它们之间的比较。但首先,让我们快速讨论一下什么是GUI框架,为什么它是编程的一个重要方面。
什么是GUI?
GUI是图形用户界面的首字母缩写。它是允许用户通过图形元素与电子设备互动的界面。
它是软件编程的一个重要方面,因为它允许人与计算机/电子设备之间的互动。简单地说,它用用户友好的动作取代了基于文本的命令--目标是为用户呈现易于使用的决策点和界面,这反过来又在软件应用中产生了良好的用户体验。
顶级的Python GUI框架
我们将在本文中讨论的顶级Python GUI框架是。
这些Python GUI框架是Python软件开发者最常用的框架。每一个都有其优点和缺点,我们将在下面介绍。
要继续阅读本文,你需要从Python官方网站上安装Python 3解释器。
Python Tkinter
Tkinter是Python的标准内置GUI库,在GitHub上有超过41,000颗星,是最受欢迎的Python GUI框架。它是一个快速且易于使用的Python GUI库,使其成为构建Python GUI应用程序的首选库。
安装Tkinter
Tkinter是一个内置的Python库,所以它预先安装在你的计算机上的Python安装中。不需要单独安装它。
Tkinter 一览表
Tkinter 提供了许多在 GUI 应用程序中经常使用的部件,如标签、按钮、复选框、文本框和画布 (用于绘制三角形、矩形、多边形等形状)。
下面是一个例子。
import Tkinter
mainApp = Tkinter.Tk()
# Add the codes for the widget here..
mainApp.mainloop()
当你运行上面的Python代码时,你会看到下面的情况。
在Python中使用Tkinter的优点
- 它是Python的一部分,这意味着没有任何额外的东西需要下载
- 它使用简单的语法
- 文本和画布部件非常强大且易于使用
- 它在Mac和Windows上使用本地部件
使用Tkinter的缺点
- 它有时难以调试
- 与其他框架不同,它的外观不是那么漂亮
PyQT 5
PyQT是一个Python GUI框架,围绕着流行的QT应用程序框架构建。它可以在许多平台上运行,包括Windows、macOS、Linux、iOS和Android。
安装PyQT
安装PyQT 5也很简单和直接。首先,我们创建一个虚拟环境。这是一个非常重要的步骤,建议在构建新的Python应用程序时采取。
要创建一个Python虚拟环境,打开你的终端,在你喜欢的目录中运行下面的命令。
Python -m virtualenv pyqt_venv
要激活虚拟环境,运行下面的命令。
source pyqt_venv/bin/activate
激活虚拟环境后,使用Python pip在虚拟环境中安装PyQT。要做到这一点,在你的终端运行下面的命令。
pip install pyqt5
使用PyQT
成功安装PyQT 5后,我们将继续编写一个小型的PyQT GUI应用程序,并设定高度和宽度。下面是我们的代码将是什么样子。
import sys
from PyQt5.QtWidgets import QApplication, QWidget, QLabel
def PyQT5App():
app = QApplication(sys.argv)
w = QWidget()
b = QLabel(w)
b.setText("Hello World!")
w.setGeometry(500, 500, 1000, 500)
b.move(450, 240)
w.setWindowTitle("PyQt5")
w.show()
sys.exit(app.exec_())
if __name__ == '__main__':
PyQT5App()
运行上面的代码后,你应该看到下面的情况。
使用PyQT的优点
- 更好的文档
- 更加方便用户使用
- 提供更多的UI组件
PyQT的缺点
- 学习曲线很陡,因为它有组件,需要时间来学习它
- 如果你的应用程序不是开源的,你必须支付一个商业许可。
PySide6
PySide6,被称为QT for Python,是一个绑定了QT框架的Python GUI框架。PySide提供了对所有由QT提供的GUI组件和工具的访问。
PySide的安装
Pyside可以使用Python pip轻松安装。就像我们对其他框架所做的那样,我们首先需要创建一个虚拟环境。
打开你的终端,在你喜欢的目录下运行下面的命令。
Python -m virtualenv pyside_venv
为了激活虚拟环境,运行下面的命令。
source pyside_venv/bin/activate
现在,通过在终端运行下面的命令,使用Python pip在虚拟环境中安装PySide6。
pip install PySide6
PySide的例子
让我们来看看一个简单的PySide应用程序。
import sys
from PySide.QtCore import Qt
from PySide6.QtWidgets import (QApplication, QLabel,
QVBoxLayout, QWidget)
from __feature__ import snake_case, true_property
class PySideApp(QWidget):
def __init__(self):
QWidget.__init__(self)
self.message = QLabel("Hello PySide World!")
self.message.alignment = Qt.AlignCenter
self.layout = QVBoxLayout(self)
self.layout.add_widget(self.message)
if __name__ == "__main__":
app = QApplication(sys.argv)
widget = PySideApp()
widget.show()
sys.exit(app.exec())
运行上面的代码,得到这个输出。
PySide的优点
- PySide可以跨平台使用,并且比其他Python GUI框架拥有更广泛的社区支持。
- 它提供了比其他框架更好的文档,包括教程、例子、视频指南等。
- 被包括梅赛德斯、TomTom和诺基亚在内的大型组织使用
PySide的缺点
- 需要商业许可
Kivy
Kivy是一个开源的Python GUI框架,可运行于Linux、Windows、OS X、Android、iOS和Raspberry Pi。Kivy是最稳定的Python GUI框架之一,它提供了一个API和详尽的文档和指南,便于使用和设置。值得注意的是,Kivy是用Python和Cython编写的。
安装Kivy
有多种方法来安装Kivy,这因你使用的平台而异。在这篇文章中,我们将用Python pip安装Kivy。要了解其他安装Kivy的方法,你可以查看这里的安装页面。
在安装Kivy之前,让我们为Kivy项目创建一个虚拟环境。
要做到这一点,请打开你的终端,在你喜欢的目录下运行下面的命令。
Python -m virtualenv kivy_venv
为了激活虚拟环境,运行下面的命令。
source kivy_venv/bin/activate
激活我们的虚拟环境后,你可以使用Python pip在你的虚拟环境中安装Kivy预编译轮。要做到这一点,在你的终端运行下面的命令。
pip install kivy
在你的应用程序中使用Kivy
在这一点上,你已经成功地安装了Kivy。就像Tkinter一样,Kivy也提供了许多小工具。下面是一个简单的Kivy应用程序的例子。
from kivy.app import App
from kivy.uix.button import Button
class HelloWorldApp(App):
def build(self):
return Button(text="Hello Kivy World")
HelloWorldApp().run()
运行上面的代码后,你会看到下面的窗口。
Kivy的优点
- 支持多个平台,包括移动平台
- 使用Kivy,你只需要写一次代码,因为你可以在多个设备上使用它
- 小部件很容易使用,支持多点触摸
使用Kivy的缺点
- 它没有提供一个原生的用户界面
- 社区和采用率相对较小
- 因为包含了Python解释器,所以其包的大小总是很大。
总结
关于这些Python GUI框架,有必要注意一些事情。Tkinter和Kivy是免费的库,所以你可以在你的任何Python项目中使用它们。
然而,PyQT和PySide则需要你获得许可,以使你的项目商业化。另外,Tkinter是一个内置的Python库,而其他三个库需要你安装它们才能使用。
在了解了一些常见的Python GUI框架,如PySide、PyQT、Kivy和Tkinter之后,你现在应该能够为你的Python项目决定最佳框架了。
我希望在下面的评论区听到你对Python GUI框架的看法以及你经常使用的框架。
The postComparing the top Python GUI frameworksappeared first onLogRocket Blog.