一个Python GUI神器,双手彻底解放!

2020-12-03 13:37:09 浏览数 (1)

今天给大家推荐一个非常牛X的Python GUI库,PySimpleGUI

可以说,有了它双手真的彻底解放了,做个GUI分分钟就能搞定。

▍什么是PySimpleGUI?

PySimpleGUI是一个Python的GUI软件包,目的是让GUI更简单。

它支持4个框架,包括tkinter,Qt,WxPython和Remi。与直接使用基础框架编写代码相比,PySimpleGUI代码更简单、更短,因为PySimpleGUI实现了许多“样板代码”,并且接口已被极大的简化,用最少的代码即可实现所需功能。

PySimpleGUI含有成百上千的书面文档页面和示例程序,这将帮助我们快速有效地工作。使用PySimpleGUI可能无需花几天或几周的时间来学习一个GUI包,而是可以在一个下午内完成项目。

▍PySimpleGUI示例展示

一个简单的计算器

三行代码即可实现一个计算器GUI。

代码语言:javascript复制
import PySimpleGUI as sg

layout = [[sg.Button(f'{row}, {col}') for col in range(4)] for row in range(4)]

event, values = sg.Window('List Comprehensions', layout).read(close=True)

游戏类

PySimpleGUI虽然不是专门作为游戏开发SDK编写的,但它使得某些游戏的开发非常容易。

媒体捕获和播放

在GUI中,实现网络摄像头捕获和显示视频只需4行PySimpleGUI代码。更牛逼的是,这4行代码可与tkinter,Qt和Web端口一起使用。比如,我们可以使用tkinter显示图像的相同代码在浏览器中实时显示网络摄像头。

人工智能

一直以来,AI和Python都配对在一起使用,但一个问题是缺少用户的GUI方式与这些AI算法进行熟悉交互。

下面的YOLO演示是一个很好的示例,说明GUI如何在与AI算法交互中产生巨大的变化。注意窗口底部的两个滑块,这两个滑块可更改YOLO算法使用的两个参数。

绘图

使用PySimpleGUI在GUI中显示数据交互很简单,有几种选择。

一是可以使用内置的绘图/绘图功能来生成自定义图形。下面的CPU使用率监视就使用了Graph元素。

二是PySimpleGUI可以将Matplotlib图形直接嵌入到GUI窗口中。如果要保留Matplotlib交互功能,甚至可以将交互控件嵌入到窗口中。

使用PySimpleGUI的颜色主题,还可以生成比Matplotlib中默认创建更炫酷的图形。

前端

前端GUI是一个收集信息,并将其转化为命令行的应用程序。

下面的示例通过GUI收集参数,使用这些参数构造命令行,然后再将命令行程序的输出路由到GUI界面的情况下执行命令。

树莓派

由于PySimpleGUI与Python 3.4兼容,因此它能够为Raspberry Pi项目创建GUI。与触摸屏搭配使用时,效果特别好。如果没有连接监视器,你也可以使用PySimpleGUIWeb来控制你的树莓派。

▍运行环境

目前可与Python3.4 兼容,支持Windows、Linux和Mac。

Windows的初始安装:

代码语言:javascript复制
python -m pip install PySimpleGUI

Linux和MacOS的初始安装:

代码语言:javascript复制
python3 -m pip install PySimpleGUI

要升级pip,只需使用2个参数即可--upgrade --no-cache-dir。

在Windows上升级安装:

代码语言:javascript复制
python -m pip install --upgrade --no-cache-dir PySimpleGUI

升级Linux和MacOS:

代码语言:javascript复制
python3 -m pip install --upgrade --no-cache-dir PySimpleGUI

GitHub作者:Mike

链接:https://github.com/PySimpleGUI/PySimpleGUI

-end-

0 人点赞