保存后将笔记本 (.ipynb) 导出为 .py 文件

Export a notebook (.ipynb) as a .py file upon saving

我目前正在使用 Jupyter IPython Notebook.I 想将我的笔记本置于版本控制之下。

这就是为什么当我保存并检查笔记本(.ipynb 文件)时,我希望更改也能保存并同步到同一文件夹中相应的 python 脚本(.py 文件)中. (见下图)

my_files

是否与我使用的Jupyter版本有关?或者我必须编辑 config_file?

谢谢

您需要在配置目录中创建 jupyter_notebook_config.py。

如果不存在,请从主目录执行以下命令: ./jupyter notebook --generate-config

在此文件中添加粘贴以下代码:

import os
from subprocess import check_call

c = get_config()

def post_save(model, os_path, contents_manager):
    """post-save hook for converting notebooks to .py and .html files."""
    if model['type'] != 'notebook':
        return # only do this for notebooks
    d, fname = os.path.split(os_path)
    check_call(['ipython', 'nbconvert', '--to', 'script', fname], cwd=d)
    check_call(['ipython', 'nbconvert', '--to', 'html', fname], cwd=d)

c.FileContentsManager.post_save_hook = post_save

然后您需要重新启动 jupyter 服务器,然后就可以了!