后端文档【免费下载链接】readthedocs.orgThe source code that powers readthedocs.org项目地址https://gitcode.com/gh_mirrors/re/readthedocs.org点击查看免费下载Jupyter Notebook 是一种把代码、叙述文字、图片和交互组件揉合在一起的可计算叙事载体而 Sphinx 是 Read the Docs 平台背后的文档引擎。本指南以 readthedocs.org 仓库中的 官方用户指南 为骨架讲解如何通过 nbsphinx 与 MyST-NB 两大扩展把.ipynb及文本格式的 Notebook 嵌入 Sphinx 文档、渲染交互式 Widget、生成缩略图画廊并给出两者的选型建议与版本控制实践。读完本文你将能在自己的 Sphinx 项目里把 Notebook 变成正式文档页面并理解其背后的执行机制与格式差异。为什么要把 Jupyter Notebook 嵌入 Sphinx 文档Notebook 天然适合承载教程、示例和其他技术内容它同时包含代码、结果、图文与交互组件比纯静态文档更可运行。把 Notebook 嵌入 Sphinx 项目意味着这些富文档可以与普通 reStructuredText / Markdown 页面一起出现在站点导航toctree中作为 HTML 页面随整个文档站点统一构建、发布与托管借助 Read the Docs 平台获得版本化、多语言等站点级能力。在 readthedocs.org 的官方文档中这篇指南被收录于 内容指南索引并被 科学用户指南 直接引用——它是面向科学计算、交互式内容场景的推荐做法之一。引入经典.ipynbNotebook两大扩展二选一在 Sphinx 中把 Notebook 作为源文件引入主流方案有两个nbsphinx与MyST-NB。两者的意图和基础功能高度相似——都能读取.ipynb格式以及jupytext支持的附加格式配置方式也几乎一致两者差异见下文背景与选型一节。第一步创建 Notebook用你喜欢的编辑器例如 JupyterLab创建一个 Notebook比如存放在source/notebooks/Example 1.ipynb。第二步在conf.py中启用扩展二选一把扩展名加入 Sphinx 配置# conf.py —— 方案一nbsphinx extensions [ nbsphinx, ]# conf.py —— 方案二MyST-NB extensions [ myst_nb, ]第三步把 Notebook 加入toctreeNotebook 会像其他文档源文件一样被收录进站点导航。例如在根文档中加入.. toctree:: :maxdepth: 2 :caption: Contents: notebooks/Example 1{toctree} --- maxdepth: 2 caption: Contents: --- notebooks/Example 1执行 make html 之后Notebook 就会像普通 HTML 页面一样渲染在你的文档中代码单元、输出结果和图片都会被保留。 关于渲染细节的进一步定制主题、输出样式、代码高亮等需要查阅 nbsphinx 或 MyST-NB 各自的文档本文后续章节只覆盖最常见的需求。 ## 渲染交互式 Widget让文档动起来 Widget 是一类带有浏览器端表示的事件型 Python 对象可用来为 Notebook 构建交互式 GUI。基础场景使用 ipywidgets 提供滑块、文本框、按钮等控件复杂场景则可用 ipyleaflet 提供交互式地图。 这些 Widget 可以嵌入 Sphinx 生成的 HTML 文档中但有一个**关键前提必须在生成 HTML 之前保存 Widget 状态**否则渲染出来的 Widget 是空的。不同编辑器的保存方式不同 - **经典 Jupyter Notebook 界面**在 Widgets 菜单中执行 Save Notebook Widget State 操作导出 HTML 前必须手动点击一次详见 ipywidgets 官方文档的 Embedding 章节 - **JupyterLab**在 Settings 菜单中开启 Save Widget State Automatically 选项保持勾选即可自动保存 - **Visual Studio Code**据该指南记载2021 年 6 月当时还无法保存 Widget 状态因此不建议在该环境下产出含交互组件的 Notebook。 例如创建一个带 IntSlider 控件的 Notebook 并保存 Widget 状态后滑块就能在 Sphinx 构建的页面中正确渲染 [](https://link.gitcode.com/i/648345f6a2ced680720e9f33d27fe21c) 更多成熟范例可以参考ipyleaflet 在官方文档中渲染的实时交互地图以及 PyVista 面向科学 3D 可视化的多后端交互示例。 ### 两个必须注意的限制 1. **事件需要内核**Widget 本身可以嵌入静态 HTML但**事件**依赖后端内核执行。因此 interact、.observe 以及所有依赖事件的交互逻辑在纯 HTML 中不会按预期工作——静态页面只能展示控件的快照状态。 2. **额外 JS 依赖**如果 Widget 需要额外的 JavaScript 库可以在 Sphinx 应用里通过 Sphinx.add_js_file 方法注入。 ## 使用其他格式的 Notebook拥抱纯文本 经典 .ipynb 是 JSON 结构与版本控制系统协作不便。jupytext 提供了基于纯文本的 Notebook 格式其中 MyST Markdown 格式是本文示例使用的形态。一个简单的 Notebook 在 MyST Markdown 下长这样 markdown --- jupytext: text_representation: extension: .md format_name: myst format_version: 0.13 jupytext_version: 1.10.3 kernelspec: display_name: Python 3 language: python name: python3 --- # Plain-text notebook formats This is a example of a Jupyter notebook stored in MyST Markdown format. {code-cell} ipython3 import sys print(sys.version)from IPython.display import ImageImage(http://sipi.usc.edu/database/preview/misc/4.2.03.png)要让 Sphinx 识别这种 .md Notebook需要在 conf.py 中声明自定义格式通过 jupytext.reads 把 Markdown 解析回 Notebook 结构 python # conf.py —— nbsphinx 方案 nbsphinx_custom_formats { .md: [jupytext.reads, {fmt: mystnb}], } python # conf.py —— MyST-NB 方案 nb_custom_formats { .md: [jupytext.reads, {fmt: mystnb}], } 注意文本格式**不保存单元格的输出**。好消息是 Sphinx 会自动执行没有输出的 Notebook因此最终 HTML 中呈现的是补全了计算结果的完整形态。 ## 用 Notebook 创建缩略图画廊 nbsphinx 提供了从 Notebook 列表生成缩略图画廊的能力非常适合做示例集式的页面。创建画廊有两条路径 **路径一在 reStructuredText 源文件中使用 nbgallery 指令**也支持 MyST Markdown 的 {nbgallery} 形式 rst Thumbnails gallery .. nbgallery:: notebooks/Example 1 notebooks/Example 2 md # Thumbnails gallery {nbgallery} notebooks/Example 1 notebooks/Example 2 **路径二在 Notebook 中给单元格元数据打上 nbsphinx-gallery 标签**。每个编辑器修改单元格元数据的方式不同JupyterLab 中有专门的元数据编辑面板被打上标签的 Notebook 会自动进入画廊。 [](https://link.gitcode.com/i/648345f6a2ced680720e9f33d27fe21c) [](https://link.gitcode.com/i/648345f6a2ced680720e9f33d27fe21c) 真实案例方面poliastroPython 交互式天体动力学工具包在其文档中收录了多个 Notebook 示例与操作指南并用缩略图画廊统一展示它同时采用未配对的 MyST Notebook即只用文本格式、不保留 .ipynb来减小仓库体积、改善与 git 的集成。 ## 背景两种扩展的差异与选型建议 尽管 nbsphinx 与 MyST-NB 功能相似底层机制和特性覆盖仍有明显差异 | 维度 | nbsphinx | MyST-NB | | --- | --- | --- | | Markdown 转换链路 | 先经 pandoc 把 Notebook 的 Markdown 转成 reStructuredText再转 docutils AST因此假定的是 pandoc 风格 Markdown | 用 MyST-Parser 直接把 Markdown 文本转成 docutils AST使用 MyST 风格 Markdown | | 执行时机 | 在**解析阶段逐个执行**每个 Notebook | 可以**预先执行全部 Notebook**并用 jupyter-cache 缓存结果Notebook 有改动时可显著缩短构建时间 | | 缩略图画廊 | 内置 nbgallery 支持 | 目前无此功能 | | 对象粘合glue | 无 | 支持把 Notebook 中的 Python 对象嵌入文档glue 机制并提供更完善的错误报告 | | 外观细节 | 默认显示单元格编号 | 默认不显示单元格编号 | 两种 Markdown 风味大体等价但仍存在细微差异。选型建议 - 需要**其他 Notebook 格式**或**缩略图画廊**能力 → 选择 **nbsphinx** - 追求**更优化的执行工作流**、**更精简的解析机制**以及 MyST-NB 独有功能glue、更强的错误报告→ 选择 **MyST-NB**。 ## 深入Notebook 格式的三种协作模式 jupytext 面向版本控制场景给出了三条路线它们并不互斥也无需对所有 Notebook 采用同一格式 1. **使用经典 .ipynb**最直接工具链完备、无需额外软件、部件更少管理更简单。但在 git 等 VCS 中需要额外小心常见做法有三 - 提交前清空输出——能最小化冲突但计算结果是文档的一部分这一价值也随之丢失 - 使用 nbdime开源或 ReviewNB商业等工具改善 Review 流程 - 改用不依赖 Notebook 的协作工作流。 2. **用文本格式替换 .ipynb**在版本控制下表现更好也支持用普通文本编辑器甚至不支持单元格 JSON 的编辑器直接编辑。代价是文本格式不保存单元格输出。 3. **.ipynb 与文本格式配对**把文本格式文件纳入版本控制jupytext 官方推荐的 paired notebooks 方案。这是鱼与熊掌兼得的方案但少数情况下两个文件之间可能出现同步问题。 ## 仓库中的实现印证 本指南并非孤立存在readthedocs.org 仓库为它提供了完整的支撑设施 - [docs/conf.py](https://link.gitcode.com/i/92388a4b34031abe37cc152107c2cd99) 中的 intersphinx_mapping 显式注册了 nbsphinx、myst-nb、ipywidgets、ipyleaflet、poliastro、myst-parser、jupyter 等外部文档映射正是为了让上述交叉引用如 ipywidgets:embedding在构建时可解析 - [内容指南索引](https://link.gitcode.com/i/aad0e9bb5e0966d6772aec9d46180185) 将本文作为内容、主题与 SEO板块的入口之一 - [科学用户指南](https://link.gitcode.com/i/091085ffb606c71d50ef98341b647fe8) 在面向科研用户的场景中再次推荐本文并把它与 Jupyter Book、交互式数据可视化等能力并列介绍。 这也说明把 Jupyter Notebook 嵌入 Sphinx 并非小众技巧而是 Read the Docs 生态中服务教程、示例与交互式科学内容的标准姿势。结合本文的配置片段与选型建议你完全可以在自己的 Sphinx 项目里复刻这一整套流程。赞分享后端文档【免费下载链接】readthedocs.orgThe source code that powers readthedocs.org项目地址https://gitcode.com/gh_mirrors/re/readthedocs.org点击查看免费下载相关推荐statsmodels 文档构建指南Sphinx 与 Jupyter Notebook 集成实践statsmodels 文档构建指南Sphinx 与 Jupyter Notebook 集成实践 Statsmodels 官方文档采用 Sphinx 与 Ju数据分析数据科学科研在 SciPy 文档中编写 Jupyter 教程从 .ipynb 到 MyST Markdown 的完整转换指南在 SciPy 文档中编写 Jupyter 教程从 .ipynb 到 MyST Markdown 的完整转换指南 本篇指南面向希望为 SciPy 官方文档贡献科学计算数据科学高性能计算SpeechBrain 文档系统构建指南Sphinx 文档、API 自动生成与 Jupyter 教程集成SpeechBrain 文档系统构建指南Sphinx 文档、API 自动生成与 Jupyter 教程集成 SpeechBrain 是建立在 PyTorch 之人工智能深度学习语音音频NLP预训练上一篇QQ音乐加密音频一键解密终极指南3步解锁你的音乐自由下一篇Some component创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
企业数字化 ERP 产品动态
相关推荐
AI 写代码后,你的时间账单 摘要:AI 接手写代码后,纯编码时间变短,但总工时没少。本文把开发者时间拆成五块——讲需求、审代码、修 bug、做集成、管上下文,并给四个可落地的杠杆,讲清时间到底搬去了哪、怎么砍。 现象:写快了… · 2026/9/27 21:49:34
ubuntu系统*网络配置*初始化 #如果用的是vmware,就要注意软件网络配置在 Ubuntu 系统(特别是无桌面的 Server 版)中,初始化网络通常分为四个核心步骤:确认网卡名称、配置网络参数、应用配置、验证连通性。由于 Ubuntu 18.04 及以后的版本默认使用 … · 2026/9/27 21:49:28
【仓颉语言入门 · 第17课】 【仓颉语言入门 第17课】接口 interface 与实现 第 15、16 课把 struct/class 的骨架和血肉都搭好了。但还差最后一块拼图:类与类之间怎么约定"能力"?怎么让一只鸟和一架飞机共享"能飞"这个抽象?怎么写一个函数… · 2026/9/27 23:02:28
just 1.51.0 Windows x64 下载:命令运行器与justfile说明 just 1.51.0 Windows x64 下载 官方发行页
本文整理 just 1.51.0 的 Windows x64 MSVC 压缩包,用于需要固定版本的项目命令管理环境。备用入口经草料提示页进入夸克,点击“继续访问”查看文件;登录与下载要求以实际页面为准。
文件信息
文… · 2026/9/27 23:02:28
一片训练加速芯片都不要,顶尖团队反手砸百亿抢购最普通算力 一片训练加速芯片都不要,顶尖团队反手砸百亿抢购最普通算力
提到人工智能公司花大钱买算力,你的第一反应大概是抢购英伟达的图形处理器。在这个人人盯着大显卡的年头,如果有人掏出上百亿美元,指明只要最普通、最传统的中央处理器&… · 2026/9/27 23:02:28
【每天一个CSS | Day05】不用JS的毛玻璃时钟,指针真的在走 写在前面
之前我们分别做了极光、像素、3D 城市、夜色卡,全是“纯视觉”。
今天换一个思路:做一个带“信息”的东西——一只真会走的时钟。
毛玻璃卡片 三根指针,秒针每秒跳一格,分针、时针按真实速度行走;开屏一瞬&a… · 2026/9/27 23:02:28
2026最新支付网站模板避坑指南:告别丑模板,5类方案报价全解析 2026最新支付网站模板避坑指南:告别丑模板,5类方案报价全解析 做过支付业务或者正在筹备上线支付接口的朋友,最怕的就是拿到一个“丑得没法看”且功能残缺的模板。很多甲方老板找供应商,对方甩过来一堆千篇一律的后台截图,前端页面配色像2010年… · 2026/9/27 23:02:22
MATLAB雷达信号脉冲压缩仿真:LFM线性调频、匹配滤波与距离分辨率实现 简介:这套Matlab仿真工具完整呈现雷达信号脉冲压缩过程,从线性调频(LFM)信号生成、目标回波仿真到匹配滤波压缩处理均有可运行代码支撑,面向电子信息工程、计算机、数学等专业学生,适用于课程设计、期末大作… · 2026/9/27 0:00:01
汕头网站建设制作厂家避坑指南:5大注意事项救急 汕头网站建设制作厂家避坑指南:5大注意事项救急 改个需求建站公司拖一周,这种憋屈事我见得太多了。 很多汕头老板找本地建站团队,签合同前看着方案挺美,一上线就变脸。 今天不聊虚的,直接拆解找 汕头网站建设制作厂家 时的5个核心 注意事项… · 2026/9/27 0:00:01
多模态虚假新闻检测实战:BERT+ResNet双塔与对比学习 简介:基于PyTorch的多模态虚假新闻检测项目完整代码包,面向自然语言处理与计算机视觉交叉方向的开发者、科研人员及毕业设计选题者,解决社交媒体中文本与图像联合识别虚假新闻的问题。系统以BERT预训练模型提取文本语义特征,以Res… · 2026/9/27 0:00:01
MATLAB雷达信号脉冲压缩仿真:LFM线性调频、匹配滤波与距离分辨率实现 简介:这套Matlab仿真工具完整呈现雷达信号脉冲压缩过程,从线性调频(LFM)信号生成、目标回波仿真到匹配滤波压缩处理均有可运行代码支撑,面向电子信息工程、计算机、数学等专业学生,适用于课程设计、期末大作… · 2026/9/27 0:00:01
汕头网站建设制作厂家避坑指南:5大注意事项救急 汕头网站建设制作厂家避坑指南:5大注意事项救急 改个需求建站公司拖一周,这种憋屈事我见得太多了。 很多汕头老板找本地建站团队,签合同前看着方案挺美,一上线就变脸。 今天不聊虚的,直接拆解找 汕头网站建设制作厂家 时的5个核心 注意事项… · 2026/9/27 0:00:01
多模态虚假新闻检测实战:BERT+ResNet双塔与对比学习 简介:基于PyTorch的多模态虚假新闻检测项目完整代码包,面向自然语言处理与计算机视觉交叉方向的开发者、科研人员及毕业设计选题者,解决社交媒体中文本与图像联合识别虚假新闻的问题。系统以BERT预训练模型提取文本语义特征,以Res… · 2026/9/27 0:00:01