导出单个iPython Jupyter笔记本电脑输出

Mic*_*cis 13 python jupyter-notebook

我正在玩我的iPython笔记本格式化,以使它们更多地成为日志.display(HTML())构造的使用使得一切都很好并且相对容易组织.

我想在其他媒体中使用某些单元格的输出,例如演示文稿.我现在这样做的方法是截取该区域的截图,但随后一切都变成像素,并且没有可能的细化.

有没有办法以某种有用的格式呈现单个单元格的输出?

Ank*_*hta 6

你可以尝试一下%%capture Jupyter notebook命令。

查看这个答案:how to save the output of a cell in iPython Notebook?


小智 4

截至目前,尚无法在 Jupyter 中导出单个单元格输出,但您可以做的是将整个笔记本转换为更有用的格式,然后仅删除您需要的部分。这不是最佳的,但它仍然比您当前的解决方法更好,至少在输出的质量方面是这样。

您可以通过不同的方式执行此操作:

  1. 文件->将笔记本导出为... -> 您首选的文件格式
  2. 如果您想以编程方式执行此操作,可以从命令行使用nbconvert,如下所示:

    nbconvert --to (your preferred output format) yourNotebook.ipynb

您还可以在笔记本内部执行此操作,在单元格中执行此代码(在本示例中对于 HTML):

from nbconvert import HTMLExporter
import codecs
import nbformat

notebook_name = 'YOUR_NOTEBOOK_NAME.ipynb'
output_file_name = 'output.html'

exporter = HTMLExporter()
output_notebook = nbformat.read(notebook_name, as_version=4)

output, resources = exporter.from_notebook_node(output_notebook)
codecs.open(output_file_name, 'w', encoding='utf-8').write(output)
Run Code Online (Sandbox Code Playgroud)

不过,大多数库允许您将程序的结果导出到任何所需的输出(pandas、matplotlib、altair...),因此您可能应该尝试使用它们。

  • “修剪不需要的部分”部分可以通过使用您选择的标签标记这些单元格然后使用“TagRemovePreprocessor”选项来完成。 (2认同)