32个Python图形化界面库
1
wxPython
官网:
https://wxpython.org/pages/overview/
概述:
wxPython是一个用C ++编写的适用于Python的跨平台GUI工具包,它让Python程序员们能够简单、轻松地创建功能强大的图形用户界面的程序。它目前支持的平台包括Microsoft Windows、Mac OS X和macOS,以及Linux或其他具有GTK2或GTK3库的类unix系统。
拓展:
wxpython的在线教程网址:
http://www.vue5.com/wxpython/wxpython.html
2
Tkinter
官网:
https://docs.python.org/3/library/tkinter.html
概述:
Tkinter是Python的标准GUI 库,由于其简单易学的语法,它是GUI开发初学者的首选之一。tkinter可以在大多数Unix平台上使用,也包括macOS和Windows系统。
3
PyQt
官网:
https://pypi.org/project/PyQt5/
概述:
QT是跨平台C++库的集合,PyQt是Qt的python绑定,它被实现为超过35个扩展模块。PyQt使程序员不但拥有Qt的所有功能,还能够利用Python的简单性来开发它。可在Qt支持的所有平台上运行,包括Windows、macOS、Linux、iOS和Android。
拓展:
PyQt的在线教程网址:
http://www.vue5.com/pyqt/pyqt.html
4
PyGTK
官网:
https://pypi.org/project/PyGTK/
概述:
PyGTK是一组用Python和C编写的用于GTK + GUI库的包装器。它是GNOME项目的一部分。它为用Python构建桌面应用程序提供了全面的工具,其他流行GUI库的Python绑定也可用。
拓展:
PyGTK的在线教程网址:
http://www.vue5.com/pygtk/pygtk_introduction.html
5
Flexx
官网:
https://pypi.org/project/flexx/
概述:
Flexx是一个用于创建图形用户界面(GUI)的纯Python工具包,它使用web技术进行渲染。应用程序完全用Python编写,PScript转译器动态生成必要的JavaScript。可以使用Flexx创建(跨平台)桌面应用程序,web应用程序,并将应用程序导出到独立的HTML文档。它也适用于Jupyter笔记本。
6
Kivy
官网:
https://kivy.org/#home
概述:
Kivy是一个开源的Python框架,用于快速开发应用,实现各种当前流行的用户界面,比如多点触摸等等。它是基于Python界面文件和程序文件相互分离的设计思路,设计简洁优雅,语法易学,非常适合新人入门。Kivy可以在不同的平台上运行,包括Windows,Linux,MacOS,Android,iOS。
拓展:
Kivy中文编程指南网址:
https://cycleuser.gitbooks.io/kivy-guide-chinese/content/
7
libavg
官网:
https://pypi.org/project/libavg/
概述:
libavg使用python作为脚本语言,并使用高速C++编写。它具有清晰一致的界面,易于学习和使用,并自动的提供专业质量的图形。然而,最重要的是,libavg速度很快。因为C++在编写核心时考虑到了性能,所有的图形处理都是通过OpenGL硬件加速的,GPU着色器被用来加速视频解码、合成和视觉效果等关键部分。
8
PyGObject
官网:
https://pygobject.readthedocs.io/en/latest/
概述:
PyGObject是一个Python包,它为基于GObject的库(如GTK、GStreamer、WebKitGTK、GLib、GIO等)提供绑定。这些库可以支持 GTK+3 图形界面工具集,因此时 GObject 提供了丰富的图形界面组件。它支持Linux、Windows和macOS。
9
Camelot
官网:
https://pypi.org/project/Camelot/
概述:
Camelot提供了在Python, SQLAlchemy和Qt之上构建业务应用的组件,它的灵感来自于Django的管理界面。它足以定义数据库模式、定义数据库和对象之间的映射,并创建用户友好的桌面GUI。
10
PySimpleGUI
官网:
https://pypi.org/project/PySimpleGUI/
概述:
PySimpleGUI是一个Python包,它的框架采用了四种最流行的框架之一:tkinter、Qt、WxPython和Remi。此外,PySimpleGUI代码通过实现大部分“样板代码”比直接使用底层框架编写更简单、更短。
11
pyFLTK
官网:
https://pyfltk.sourceforge.io/
概述:
pyFLTK将FLTK提供的测试程序转换为Python来演示包装器,与其他的工具包相比,它的占用空间更小。支持的平台有:Linux、Windows、MacOS。
12
Dear PyGui
官网:
https://pypi.org/project/dearpygui/
概述:
Dear PyGui是一个简单易用(但功能强大)的Python GUI框架。它不是一般意义上的Dear ImGui的包装,而是一个用Dear ImGui构建的库,它模拟了传统的保留模式GUI(相对于Dear ImGui的直接模式范例)。Dear PyGui与其他Python GUI的框架也有着根本的不同。在后台,Dear PyGui使用即时模式范例和你的计算机的GPU来促进极其动态的接口。Dear PyGui目前支持以下平台:Windows 10,macOs,Linux,Raspberry Pi 4。
13
PyOpenGL
官网:
https://pypi.org/project/PyOpenGL/
概述:
PyOpenGL是一个最常见的跨平台的OpenGL和相关的APIs的python绑定,这个绑定是使用标准的ctypes库创建的,并且是在一个非常自由的BSD风格的开源许可证下提供的。
14
EasyGUI
官网:
https://pypi.org/project/easygui/
概述:
EasyGUI是一个用Python进行的非常简单、非常容易的GUI编程模块。它不同于其他GUI库,因为EasyGUI不是事件驱动的,相反,它所有的GUI交互都是通过简单的函数调用调用的,不要求程序员了解任何关于tkinter、框架、小部件、回调或lambda的信息。
15
PyQtGraph
官网:
https://pypi.org/project/pyqtgraph/
概述:
PyQtGraph是一个纯python图形和GUI库,构建于PyQt5/PySide2和numpy之上。应用于数学/科学/工程应用。尽管它完全用python编写,但它的速度非常快,因为它充分利用了numpy进行数字运算、Qt的GraphicsView 2D显示框架和OpenGL进行3D显示。
16
PySide
官网:
http://pyside.github.io/docs/pyside/
概述:
PySide是另一个跨平台工具集Qt的python绑定,最初由BoostC++ 库实现,后来使用Shiboken绑定生成器构建。PySide旨在让Python开发人员以最自然的方式访问Qt库。
17
PyGUI
官网:
https://www.cosc.canterbury.ac.nz/greg.ewing/python_gui/
概述:
PyGUI是一种专门为Python设计的GUI API,这个API是小型和轻量级的,在Python应用程序和平台的底层GUI工具之间插入尽可能少的代码,并且不增加使用它们的Python安装或应用程序的数量。支持三个主要平台:Unix,Macintosh和Windows。
18
Guizero
官网:
https://lawsie.github.io/guizero/
概述:
Guizero是一个非常适合初学者的库,他能让初学者快速、轻松地为他们的程序创建gui。
19
Gaphas
官网:
https://pypi.org/project/gaphas/
概述:
Gaphas是一个提供了绘制图表的用户界面组件(小部件)的库。它可以将图绘制到屏幕上,然后轻松地导出为各种格式,包括SVG和PDF。使用Gaphas可以构建带有树、网络、流程图或其他图表的应用程序。
20
AutoPy
官网:
https://pypi.org/project/autopy/
概述:
AutoPy是一个简单的、跨平台的Python GUI自动化库。它包括控制键盘和鼠标,在屏幕上寻找颜色和位图,以及显示警报的功能。目前支持macOS, Windows和带有XTest扩展的X11。
21
Toga
官网:
https://toga.readthedocs.io/en/latest/
概述:
Toga是一个Python原生的、os原生的、跨平台GUI工具包。它由一个基本组件库和一个共享接口组成,以简化与平台无关的GUI开发。Toga可以在Mac OS、Windows、Linux(GTK)以及Android和iOS等移动平台上使用。
22
pyGlet
官网:
https://pypi.org/project/pyglet/
概述:
pyGlet是Python的跨平台窗口和多媒体库,用于开发游戏和其他视觉丰富的应用程序。它支持窗口、用户界面事件处理、操纵杆、OpenGL图形、加载图像和视频以及播放声音和音乐。pyglet支持在Windows、OS X和Linux上工作。
23
htmlPy
官网:
https://htmlpy.readthedocs.io/en/master/
概述:
htmlPy是PySide的QtWebKit库的包装器。它有助于使用HTML5、CSS3和Javascript为独立的Python应用程序创建漂亮的gui。它是基于Qt构建的,这使得它具有高度的可定制性和跨平台性。htmlPy与Python2和Python3兼容。它可以用于任何python库或环境,如django, flask, scipy, virtualenv等。也可以使用前端库和框架,如bootstrap, jQuery, jQuery UI等为应用程序创建gui。
24
PyDraw
官网:
https://pypi.org/project/pydraw/
概述:
PyDraw是一个简单的图形库,旨在使图形和输入简单和同步。它最初的设计是为了取代turtle作为goto图形库教学计算机科学,现在它已经发展成为一个更大的项目,目标更远大,即创建一个易于学习、教学和在几乎任何情况下使用的易于使用的库。
25
Guietta
官网:
https://guietta.readthedocs.io/en/stable/
概述:
Guietta是一个用于制作简单Python GUI的工具。
26
Pyforms
官网:
https://pyforms.readthedocs.io/en/v4/
概述:
Pyforms是一个Python 3框架,用于开发能够在桌面GUI、终端和Web三种不同环境中执行的应用程序。该库由三个子库组成,每个子库实现负责在每个不同环境下解释Pyforms应用程序的层,这些层可以单独为用户使用,也可以一起使用
27
Pywin32
官网:
https://pypi.org/project/pywin32/
概述:
Pywin32提供了从Python访问许多Windows APIs的功能。
28
CEF Python
官网:
https://github.com/cztomczak/cefpython
概述:
CEF Python是一个开源项目,旨在为Chromium嵌入式框架提供Python绑定。CEF Python还提供了为许多Python GUI框架嵌入CEF的示例,如PyQt、wxPython、PyGTK、PyGObject、Tkinter、Kivy、Panda3D、PyGame、PyOpenGL、PyWin32、PySide和PySDL2。该框架面向Windows,MAC和Linux。
29
Dabo
官网:
https://github.com/dabodev/dabo
概述:
Dabo用于开发多平台数据库业务应用程序,可以使用Python编程,对Dabo的基类进行子类化。Dabo有三个子包,代表现代数据库应用程序设计中常见的三层:dabo.db:数据库;dabo.biz:业务对象;dabo.ui:用户界面。其中dabo.ui(目前)需要wxPython,将来可能支持其他ui库,如PyQt或PySide、tk和curses。
30
Panda3D
官网:
https://pypi.org/project/Panda3D/
概述:
Panda3D是一个强大的3D引擎,用C++编写,有完整的Python绑定集。与其他引擎不同,这些绑定是自动生成的,这意味着它们始终是最新和完整的:引擎的所有功能都可以从Python控制。所有主要的Panda3D应用程序都是用Python编写的,这是使用该引擎的预期方式。Panda3D现在支持自动着色器生成,这意味着您可以使用法线贴图、光泽度贴图、光晕贴图、HDR、卡通着色等,而无需编写任何着色器。Panda3D还是一个现代引擎,支持高级功能,如着色器、模具和渲染到纹理。Panda3D与众不同之处在于它强调短的学习曲线、快速的开发以及极端的稳定性和健壮性。Panda3D支持Windows、Linux或macOS。
31
pyui4win
官网:
https://github.com/huqinghua/pyui4win
概述:
pyui4win是一个一个用python实现业务逻辑、用xml和html/css/js描述界面的windows程序的快速开发框架。该框架将duilib运行时和python运行时结合到一起,实现用xml快速构建界面的同时,利用python及其众多久经考验的库编写业务逻辑,极大地缩短开发周期。
32
PyGame
官网:
https://www.pygame.org/docs/
概述:
pygame是一个免费的开源跨平台库,用于使用Python开发多媒体应用程序,如视频游戏。它使用SDL库和其他几个流行的库来抽象最常见的函数,使编写这些程序成为一项更直观的任务。Pygame具有高度的可移植性,可以在几乎所有平台和操作系统上运行。