一個 Python GUI 神器,雙手徹底解放!

大家好,我是濤哥。

今天給大家推薦一個非常牛 X 的 Python GUI 庫,PySimpleGUI

可以說,有了它雙手真的徹底解放了,做個 GUI 分分鐘就能搞定。

什麼是 PySimpleGUI?

PySimpleGUI 是一個 Python 的 GUI 軟件包,目的是讓 GUI 更簡單。

它支持 4 個框架,包括 tkinter,Qt,WxPython 和 Remi。與直接使用基礎框架編寫代碼相比,PySimpleGUI 代碼更簡單、更短,因爲 PySimpleGUI 實現了許多 “樣板代碼”,並且接口已被極大的簡化,用最少的代碼即可實現所需功能。

PySimpleGUI 含有成百上千的書面文檔頁面和示例程序,這將幫助我們快速有效地工作。使用 PySimpleGUI 可能無需花幾天或幾周的時間來學習一個 GUI 包,而是可以在一個下午內完成項目。

PySimpleGUI 示例展示

一個簡單的計算器

三行代碼即可實現一個計算器 GUI。

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 的初始安裝:

python -m pip install PySimpleGUI

Linux 和 MacOS 的初始安裝:

python3 -m pip install PySimpleGUI

要升級 pip,只需使用 2 個參數即可 --upgrade --no-cache-dir。

在 Windows 上升級安裝:

python -m pip install --upgrade --no-cache-dir PySimpleGUI

升級 Linux 和 MacOS:

python3 -m pip install --upgrade --no-cache-dir PySimpleGUI

GitHub 作者:Mike

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

本文由 Readfog 進行 AMP 轉碼,版權歸原作者所有。
來源https://mp.weixin.qq.com/s/k1K7dOXz-WNgoDPFtsvD3A