2025年,这9个Python GUI 库让我眼前一亮
哎我跟你说…昨天晚上差不多十一点吧,我在公司楼下那边喝着还算温的美式,脑子里突然就蹦出来个事儿——今年这 Python 的 GUI 库怎么一下子又冒了那么多,不过…说实话,有几个我真是看着就觉得“哎哟这个可以啊”。我边嘟囔边掏手机记了个小列表,免得第二天忘了…你们懂的,年纪大了记性不太行。
PySide6:这个真的…稳
我那会儿在工位上给小李看我写的那个小工具,他说“东哥你这界面咋这么顺滑?”,我愣了下说“哎等会儿…我找错文件了,这是 PySide6 那版…QT 的壳子”。 反正这种跨平台啊、组件齐全啊就不多讲了,写个简单窗口大概就这样:
from PySide6.QtWidgets import QApplication, QLabelapp = QApplication([])
label = QLabel("嘿嘿这个能跑吗?")
label.show()
app.exec()
我那天测完直接把 PyQt5 给删了…占地方。
DearPyGui:就是那种“游戏感十足”的库
前两天我在茶水间碰到我们后端老王,他拿着个小 demo 给我看,说“东哥你看这玩意是不是像游戏 UI?”,我一看就懂了,DearPyGui,这玩意是渲染器驱动的,刷新特别快。
import dearpygui.dearpygui as dpgdpg.create_context()
with dpg.window(label="窗口"):
dpg.add_text("这个刷新也太丝滑了吧")
dpg.create_viewport()
dpg.setup_dearpygui()
dpg.show_viewport()
dpg.start_dearpygui()
你说普通业务后台界面不用这么炫…可做工具特别香。
Flet:有点奇怪但很上头
大概上周五晚上八点多,我正准备下班,小赵一拍我肩膀说“哥你看这 Flet 能做桌面、Web、App 三端一个代码”,我心里“哎哟这不 Flutter 的精神继承吗”。
import flet as ftdefmain(page: ft.Page):
page.add(ft.Text("一个代码三端跑…牛不牛?"))
ft.app(target=main)
反正我那天回家地铁上都在想这玩意以后搞内部小工具很省劲。
PySimpleGUI:那种“爷青回”的轻便
这个吧…就像我写自动化脚本时候突然想补个小弹窗,很快:
import PySimpleGUI as sgsg.Window("提示", [[sg.Text("你吃饭了吗?")], [sg.Button("嗯")]]).read()
就…不花里胡哨,够用。
Tkinter:虽然老,但我突然又觉得它顺眼了
前段时间在家调试硬件脚本,小女儿在旁边吵,我用 Tkinter 写了个最简单的界面,结果发现它居然…还挺稳。
import tkinter as tkroot = tk.Tk()
tk.Label(root, text="tk 还没死好吧").pack()
root.mainloop()
你们别嫌弃它,真要快速整点小工具它还挺顺手。
customtkinter:tk 的“整容版”
也是那天晚上,小女儿睡着了,我继续调那个界面,发现 Tkinter 太丑,换成 customtkinter 一下子现代化了。
import customtkinter as ctkctk.set_appearance_mode("dark")
root = ctk.CTk()
ctk.CTkLabel(root, text="tk 也能好看一点").pack()
root.mainloop()
就这种感觉——古典外壳里塞了个新皮肤。
PyWebview:本质是“浏览器外壳”
你们知道有时候前端同学很快能给你写个页面吧?我就干过这种事:拿 PyWebview 裹一下就成桌面应用了。
import webviewwebview.create_window('Webview', 'https://www.python.org')
webview.start()
是不是感觉像 Electron 的平替?是,但更轻巧。
Kivy:移动端我还是服它
我记得去年做一个扫码的小工具,安卓端用 Kivy,一开始我骂骂咧咧的,后来发现组件挺全、风格统一,蛮靠谱的。
from kivy.app import App
from kivy.uix.label import LabelclassDemo(App):
defbuild(self):
return Label(text="Kivy 安卓端很能打")
Demo().run()
今年版本更新后感觉更顺一点。
Gooey:脚本秒变 GUI 的神器
这个真的…神奇。你写个 argparse,它直接帮你把 GUI 做了。 上个月凌晨两点我在给测试部打包一个脚本时突然想起来还有 Gooey,一加上去他们直接说“哇这界面挺好看啊”。
from gooey import Gooey, GooeyParser@Gooey
defmain():
p = GooeyParser()
p.add_argument("--name")
args = p.parse_args()
print(args)
main()
就这种“不用写界面但看起来像写了”的库,绝了。
你看我这一口气说了九个…哎对了我外卖到了我先去拿一下… 等我吃完再跟你唠唠我觉得哪几个值得长期投入,你别走啊。
-END-
我为大家打造了一份RPA教程,完全免费:songshuhezi.com/rpa.html
虎哥作为一名老码农,整理了全网最全《python高级架构师资料合集》,总量高达650GB