前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >一个Python GUI神器,双手彻底解放!

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

作者头像
Python数据科学
发布2020-12-03 13:37:09
3.3K0
发布2020-12-03 13:37:09
举报
文章被收录于专栏:Python数据科学Python数据科学

今天给大家推荐一个非常牛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-

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2020-11-26,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Python数据科学 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • ▍什么是PySimpleGUI?
  • ▍PySimpleGUI示例展示
  • ▍运行环境
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档