当前位置:首页>python>Rio:一个基于 Python 的全家桶 Web UI 框架,只用 Python 就能组装出漂亮、现代的网页或本地应用

Rio:一个基于 Python 的全家桶 Web UI 框架,只用 Python 就能组装出漂亮、现代的网页或本地应用

  • 2026-10-11 08:20:35
Rio:一个基于 Python 的全家桶 Web UI 框架,只用 Python 就能组装出漂亮、现代的网页或本地应用

最近在GitHub上闲逛,发现一个叫Rio的开源项目,看完我直接愣了:纯Python写网页,连一行HTML都不用?这也太爽了吧!

这就离谱:Python也能写React?

你可能觉得我在吹牛,但我跟你讲,Rio这家伙就是把React那套组件化思想搬到Python里了。

看懂了吗?就是一个纯Python框架,后端能跑,前端也能跑。你写一个组件,Rio帮你生成整个网页界面。所有状态变化、UI更新,它都自动帮你搞定。

说实话,我第一次看到这个,第一反应是“又一个玩具项目”。结果翻了下文档,好家伙,超过50个内置组件,Switch、Button、Text这些常用的全都有。

看看代码就知道了,真不复杂

给你看个例子,一个计数器的完整代码:

classButtonClicker(rio.Component):
    clicks: int = 0

def_on_press(self) -> None:
self.clicks += 1

defbuild(self) -> rio.Component:
return rio.Column(
            rio.Button('点我', on_press=self._on_press),
            rio.Text(f'你点了 {self.clicks} 次'),
        )

app = rio.App(build=ButtonClicker)
app.run_in_browser()

就这几行,一个能响应点击的网页就出来了。不需要考虑DOM操作,不需要写回调地狱,Python里直接改变量就行。

我为什么觉得这东西有戏?

痛点太准了:很多Python开发者就想快速整个界面,不想学前端三件套。用Rio,一天就能上手,三天就能整个小系统。

运行方式灵活:它既能在浏览器里跑,也能当本地窗口应用跑。你写一套代码,两个场景都覆盖,这不香吗?

工具链友好:因为全程Type Safe(类型安全),你用的Pyright、Pylance这些工具都能实时给你提示,写错了当场就标红。

那到底能干啥?

场景
合适程度
说明
内部管理系统
⭐⭐⭐⭐⭐
快速开发,不用折腾前端
数据可视化面板
⭐⭐⭐⭐
结合matplotlib/plotly
个人博客/作品集
⭐⭐⭐⭐
简单网页,完全够用
移动端App
⭐⭐⭐
实验阶段,等成熟
复杂交互应用
⭐⭐
看具体需求

安装和使用,简单得不像话

pip install rio-ui

装完就一行命令创建项目:

rio new my-project
rio run

选个模板,回车,浏览器自动打开,你的第一个Rio应用就上线了。

社区还挺活跃

GitHub上星星涨得挺快,Discord里每天都有讨论。毕竟这项目还在快速迭代,每周都有新功能。你要是想参与贡献,提PR、报bug都行,文档里有贡献指南。

说实话,我挺看好Rio的。它不是什么颠覆性的东西,但实实在在解决了很多Python开发者的痛点。你想想,以后写工具脚本顺手加个界面,或者快速搭个内部系统,全程不用切语言、不用学新语法,这种感觉真的很爽。

项目地址:https://github.com/rio-labs/rio

最新文章

随机文章