当前位置: 首页 > article >正文

详细介绍 Jupyter nbconvert 工具及其用法:如何将 Notebook 转换为 Python 脚本

nbconvert 是 Jupyter 提供的一个非常强大的工具,允许用户将 Jupyter Notebook 文件(.ipynb)转换成多种格式,包括 Python 脚本(.py)、HTML、PDF、LaTeX 等。你可以通过命令行来运行 nbconvert,也可以在 Jupyter Notebook 中通过一些自定义的设置来实现转换。
在这里插入图片描述

安装 nbconvert

通常情况下,nbconvert 会随 Jupyter 一起安装,因此不需要单独安装。如果你没有安装,可以通过以下命令安装:

pip install nbconvert

或者,如果你是使用 Anaconda 管理环境,可以使用:

conda install nbconvert

使用 nbconvert 工具将 Jupyter Notebook 转换为 Python 脚本

  1. 命令行基本语法
    nbconvert 的基本语法如下:

jupyter nbconvert --to python <notebook_filename>.ipynb

这条命令会将 Jupyter Notebook 文件(例如 1Federated.ipynb)转换为 Python 脚本文件(1Federated.py)。
2. 常见的转换格式
nbconvert 支持多种输出格式。使用 --to 参数可以指定目标格式。常见的几种格式包括:

  • Python​(.py):将 Notebook 文件转换为 Python 脚本。
    jupyter nbconvert --to python <notebook_filename>.ipynb
  • HTML​(.html):将 Notebook 文件转换为 HTML 格式,以便在浏览器中查看。
    jupyter nbconvert --to html <notebook_filename>.ipynb
  • PDF​(.pdf):将 Notebook 文件转换为 PDF 格式(需要安装 LaTeX 或 pandoc)。

jupyter nbconvert --to pdf <notebook_filename>.ipynb

  • Markdown​(.md):将 Notebook 转换为 Markdown 格式,适合在其他 Markdown 支持的平台上查看。
    jupyter nbconvert --to markdown <notebook_filename>.ipynb

  • LaTeX​(.tex):将 Notebook 转换为 LaTeX 格式,适合进一步处理和排版。

    jupyter nbconvert --to latex <notebook_filename>.ipynb

  • Notebook​(.ipynb):将 Notebook 转换为一个新的 Notebook 文件,适用于有多个版本的文件之间的转换。
    jupyter nbconvert --to notebook <notebook_filename>.ipynb

  1. 选择输出文件名
    如果你想指定输出文件的名称,可以使用 --output 参数:
    jupyter nbconvert --to python <notebook_filename>.ipynb --output <output_filename>.py

    例如,以下命令会将 1Federated.ipynb 转换为 1Federated_script.py

jupyter nbconvert --to python 1Federated.ipynb --output 1Federated_script.py
4. 批量转换
如果你有多个 Notebook 文件,并且想要批量转换为 Python 脚本,可以使用通配符。例如,将当前目录下的所有 .ipynb 文件转换为 .py 文件:
jupyter nbconvert --to python *.ipynb
5. 转换并运行代码
nbconvert 还可以在转换过程中自动运行代码,这对于生成包含最新输出的报告非常有用。可以通过 --execute 参数实现:

jupyter nbconvert --to python --execute 1Federated.ipynb

这会运行 1Federated.ipynb 中的所有代码单元并将其输出包含在转换后的 Python 脚本中。
6. 其他选项

  • ​**--template**​:你可以选择不同的模板来改变输出的样式。常用模板包括 basiclabnotebook 等。例如:
jupyter nbconvert --to html --template lab 1Federated.ipynb
  • ​**--no-input**​:如果你不希望输出 Python 脚本中包含代码单元的输入部分(即去掉代码),可以加上 --no-input 参数:

jupyter nbconvert --to python --no-input 1Federated.ipynb

这将生成只包含输出结果的 Python 脚本。

通过 Jupyter Notebook 界面导出

如果你不想使用命令行,也可以直接在 Jupyter Notebook 界面中导出 Notebook:

  1. 打开 1Federated.ipynb 文件。
  2. 点击菜单栏中的 ​File​(文件)。
  3. 从下拉菜单中选择 ​Download as​(下载为)。
  4. 选择 ​**Python (.py)**​,即可将 Notebook 文件下载为 Python 脚本文件。

总结

  • nbconvert 工具是一个非常强大的命令行工具,可以将 Jupyter Notebook 文件转换为多种格式,如 Python 脚本、HTML、PDF 等。
  • 可以使用 --to 参数指定输出格式,使用 --output 参数自定义输出文件名。
  • 还可以通过 --execute 在转换时执行代码,确保生成的输出是最新的。
  • Jupyter 界面也提供了导出功能,适合不熟悉命令行的用户。

参考

https://nbconvert.readthedocs.io/en/latest/install.html
https://anaconda.org/conda-forge/nbconvert
https://blog.csdn.net/qq_36178962/article/details/115870759
https://www.w3ccoo.com/jupyter/jupyter_converting_notebooks.html


http://www.kler.cn/a/582068.html

相关文章:

  • golang从入门到做牛马:第十二篇-Go语言数组:数据的“有序集合”
  • 数据类设计_图片类设计之3_半规则图类设计(前端架构基础)
  • 官宣 | Fluss 0.6 发布公告
  • 基于Python+Vue开发的电影订票管理系统源码+运行步骤
  • Android 蓝牙工具类封装:支持经典蓝牙与 BLE,兼容高版本权限
  • 【redis】数据类型之布隆过滤器
  • 存储过程和自定义函数在银行信贷业务中的应用(oracle)
  • Spark数据倾斜深度解析与实战解决方案
  • 力扣-数组-367 有效的完全平方数
  • 【机器学习的主要类型】
  • HTML5 + Bootstrap5 网站底部代码实现与解析
  • Django系列教程(3)——Django的MVT设计模式
  • 大语言模型(LLM)的微调与应用
  • Elasticsearch 2025/3/7
  • 【漫话机器学习系列】125.普拉托变换(Platt Scaling)
  • 【UNIAPP】获取视频的第一帧作为封面(基于视频URL,Canvas)复制即用
  • git文件过大导致gitea仓库镜像推送失败问题解决(push failed: context deadline exceeded)
  • 在VMware Workstation Pro上轻松部署CentOS7 Linux虚拟机
  • 使用Java爬虫根据关键词获取衣联网商品列表:实战指南
  • 《2025年软件测试工程师面试》MySQL面试题