当前位置:首页>python>试试这个开源项目,让你纯 Python 写 Web 界面!

试试这个开源项目,让你纯 Python 写 Web 界面!

  • 2026-10-03 10:13:22
试试这个开源项目,让你纯 Python 写 Web 界面!

Hello!我是简讯。一名后端编程业余选手。

曾就职于北京某智能旅行规划公司,做 Python 后端开发,现就职于某国企。公众号主要分享编程相关技巧,同时分享好用好玩的资源。编辑器酷爱 Neovim。

想在第一时间收到文章推送,请关注、星标和置顶「爱生活爱扣钉」

★

欢迎关注 爱生活爱扣钉

★

- 记得在底部菜单栏领取福利 -

免费精品资源分享

https://knxhub.top

今天给大家安利一个让 Python 开发者直呼“真香”的 Web 界面库。有了它,你就能用纯 Python 代码写出漂亮又实用的浏览器应用,什么仪表盘、智能家居控制、机器人界面,全都不在话下。它就是 —— NiceGUI。

你可能也遇到过这种烦恼:算法和逻辑用 Python 写得飞起,一到要做个界面给用户用就头疼。HTML、CSS、JavaScript 学了一堆,最后还是做不出想要的效果。NiceGUI 就是来拯救你的,它让你用最熟悉的 Python,就能搞定从按钮、图表到复杂布局的所有东西。

图片来自 NiceGUI 官网

像写 Python 一样写网页

NiceGUI 的核心就一条:后端优先。你不需要碰任何前端代码,所有界面都用 Python 对象来创建。比如显示一段文字,就 ui.label(‘你好’);加个按钮,就 ui.button(‘点击’),简单直观。

更妙的是它的布局方式,用 Python 的 with 语句,代码缩进就是界面结构,逻辑特别清晰:

from nicegui import uiwith ui.card():    ui.label('这是一个卡片')    with ui.row():        ui.button('确认')        ui.button('取消')ui.run()

写完代码,一行 ui.run(),一个本地网页就跑起来了,浏览器自动打开。对你没看错,就这么简单。

不只是玩具

别以为简单就意味着功能弱。NiceGUI 给你的“兵器”相当齐全:该有的控件都有,输入框、滑块、下拉菜单、表格、图表、甚至 3D 场景都不在话下。样式也能随便改,可以用内置参数快速调,也能用 CSS 精细控制,它还内置了 Tailwind 和 Quasar 这种专业的前端工具,想做多好看都行。

它的数据绑定功能也很省心,把输入框绑定到一个 Python 变量上,变量一变,界面自动跟着变,不用你手动去更新。处理长时间任务时,用 async/await 就能让界面保持流畅,完全不卡顿。

想怎么用就怎么用

你的应用写好了,怎么交给别人用?NiceGUI 随你选。你可以就在自己电脑上跑,开发调试最方便;也能打包成带窗口的本地桌面程序,连浏览器都不用开;还能直接丢到服务器上,部署成网站,手机电脑都能访问,支持很多人同时用。顺便一提,你现在看的 NiceGUI 官方文档网站,就是用 NiceGUI 自己搭的,稳定性和颜值都在线。

写测试?快就一个字

通常给界面做自动化测试是个麻烦事,但 NiceGUI 把它变得异常简单。它提供了一个叫 user 的测试工具,不用启动笨重的浏览器,直接在 Python 里就能模拟用户点击、输入:

def test_button_click():    ui.button('Click me', on_click=lambda: ui.notify('Clicked!'))    # 在测试中模拟用户点击    user.click(button_element)    assert 'Clicked!' in notifications

速度快得像在测普通函数,让你有勇气给界面代码也做全面的测试覆盖,质量更有保障。

试试看

如果你曾经被“做个界面”难住,或者厌倦了在前端配置里挣扎,NiceGUI 绝对值得你花半小时体验一下。从数据科学展示、物联网控制面板,到内部工具和小脚本,它都能让想法更快地变成可交互的现实。

项目是开源的,文档很友好,社区也在慢慢变热闹。下次再需要给 Python 脚本加个界面时,别犹豫,试试 NiceGUI 吧,说不定它就是那个让你事半功倍的神器。

# 每天更新一下自己 #

# 感谢你的阅读 #

最新文章

随机文章