可直接替代 Jupyter 的数据笔记本,内置 AI 助手,支持 Python、R 和 SQL。
marimo-team/marimo
一个响应式 Python 笔记本,自动重算依赖单元格,以纯 .py 文件存储,可作为脚本运行或部署为应用。
- Star
- 23,249
- Fork
- 1,347
- 未关闭 Issue
- 603
- 最近提交
- 8小时前
这是什么?
marimo 是一个面向 Python 的响应式笔记本。运行某个单元格或调整滑块等交互组件时,它会自动重新运行依赖相关变量的单元格;若将运行时配置为惰性模式,则改为标记为过期。删除单元格时,其变量也会从内存中清除,从而避免传统 Jupyter 笔记本中常见的隐藏状态问题。
笔记本以纯 Python 文件保存,便于使用 git 管理并清晰查看差异。同一个文件可以通过命令行带参数作为脚本运行,也可以隐藏代码部署为交互式 Web 应用,还能在 VS Code、Cursor 或 PyCharm 中打开。单元格支持用 SQL 查询 dataframe、数据库和 CSV 等数据源,结果以 Python dataframe 返回。
编辑器内置包管理、交互式 dataframe 查看器和 AI 代码补全,支持自带 API Key 或使用本地模型,也可与编程智能体协作。项目还提供 CLI 工具,可将现有 Jupyter 笔记本转换为 marimo 格式。
核心功能
- 01自动重新运行依赖已变更变量的单元格。
- 02以纯 .py 文件保存笔记本,便于 git 管理。
- 03滑块、下拉框、表格等交互组件可直接绑定 Python 代码,无需回调函数。
- 04使用 SQL 查询 dataframe、数据库和 CSV,结果返回为 Python dataframe。
- 05可带命令行参数作为脚本运行,也可部署为 Web 应用或幻灯片。
- 06支持使用 pytest 测试笔记本代码。
适用场景
- 需要保证结果与代码一致的探索性数据分析。
- 将分析笔记本转换为可分享的交互式仪表板。
- 以脚本形式批量或定时运行带参数的笔记本。
- 将已有 Jupyter 笔记本迁移为更适合 git 管理的格式。
快速上手
- 1
使用 pip 安装 marimo
pip install marimo - 2
启动交互式教程
marimo tutorial intro - 3
在浏览器编辑器中创建或编辑笔记本
marimo edit
使用前须知
- 运行需要 Python 环境。
标签
常见问题
- marimo 是什么?
- 一个响应式 Python 笔记本,自动重算依赖单元格,以纯 .py 文件存储,可作为脚本运行或部署为应用。 marimo 是一个面向 Python 的响应式笔记本。运行某个单元格或调整滑块等交互组件时,它会自动重新运行依赖相关变量的单元格;若将运行时配置为惰性模式,则改为标记为过期。删除单元格时,其变量也会从内存中清除,从而避免传统 Jupyter 笔记本中常见的隐藏状态问题。
- marimo 可以免费使用吗?用的什么许可证?
- marimo 以 Apache-2.0 许可证开源。用于商业产品前,请先确认许可证条款。
- marimo 还在维护吗?
- 活跃维护中。marimo 最近一次提交是在 2026年10月20日。
- marimo 适合用来做什么?
- 需要保证结果与代码一致的探索性数据分析。 将分析笔记本转换为可分享的交互式仪表板。 以脚本形式批量或定时运行带参数的笔记本。 将已有 Jupyter 笔记本迁移为更适合 git 管理的格式。
- marimo 怎么安装和运行?
- 使用 pip 安装 marimo: pip install marimo 启动交互式教程: marimo tutorial intro 在浏览器编辑器中创建或编辑笔记本: marimo edit
- 在哪里获取 marimo?
- 源代码和安装说明在 GitHub 上:https://github.com/marimo-team/marimo
概要由 AI 根据项目 README 生成;GitHub 数据每日更新。
相关项目
Apache Superset 是一款企业级商业智能 Web 应用,用于数据探索、制作图表与仪表盘,并可连接多种数据库执行 SQL。
用 Python 脚本快速构建并分享交互式数据应用的开源框架。
用 Python 快速为机器学习模型、API 或任意函数搭建并分享 Web 演示界面的开源库。
微软推出的 10 周 20 课数据科学入门课程,基于 Python 讲解数据处理与可视化。
基于 OpenStreetMap 数据的 Python 命令行工具,可为任意城市生成极简风格的地图海报。