Ipython 如何轻松地将Jupyter笔记本的当前/可见会话导出到python源代码中

Ipython 如何轻松地将Jupyter笔记本的当前/可见会话导出到python源代码中,ipython,jupyter,Ipython,Jupyter,背景:我在jupyter笔记本上实现了一个相当短的程序来解决HackerRank上的算法问题。在完成我的程序之后,我只需要从jupyter会话中选择当前可见的源来提交。看不见的代码是错误的代码,已经被替换了,所以我不想要它们。 据我所知,jupyter的导出功能不仅会复制源代码,还会复制行号,等等。 %history和%save也不能提供我需要的功能 谢谢你的帮助 我不知道你所说的不可见代码是什么意思,它是怎么不可见的?但是您可能想看看nbconvert文档,特别是关于自定义模板的文档 如果要

背景:我在jupyter笔记本上实现了一个相当短的程序来解决HackerRank上的算法问题。在完成我的程序之后,我只需要从jupyter会话中选择当前可见的源来提交。看不见的代码是错误的代码,已经被替换了,所以我不想要它们。

据我所知,jupyter的导出功能不仅会复制源代码,还会复制行号,等等。 %history和%save也不能提供我需要的功能


谢谢你的帮助

我不知道你所说的不可见代码是什么意思,它是怎么不可见的?但是您可能想看看nbconvert文档,特别是关于自定义模板的文档

如果要删除标记单元格和提示号,即只需源代码,则在我的示例中,这是您希望另存为mytemplate.tpl的模板,但可以随意将其命名为.tpl:

然后,您可以通过命令使用此tempalte进行转换


jupyter nbconvert-to python'example.ipynb'-template=mytemplate.tpl

Hello@Louise,感谢您介绍jupyter的功能。所谓不可见代码,我指的是单元格上以前的命令,它已被其他命令替换。例如,在我上面程序的图片中,在[7]的输入7中,该单元格内的代码只是最新版本,实际上该单元格内也有以前版本的代码,但不可见。
{% extends 'python.tpl'%}

## remove markdown cells
{% block markdowncell %}
{% endblock markdowncell %}

## remove prompt
{% block in_prompt %}
{% endblock in_prompt %}