大家好,我是boy哥。
今天給大家推薦一個非常牛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 sglayout = [[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