How can I open an IPython notebook without the output?

前端 未结 4 965
感情败类
感情败类 2021-02-01 07:25

I have an IPython notebook where I\'ve accidentally dumped a huge output (15 MB) that crashed the notebook. Now when I open the notebook and attempt to delete the troubleso

4条回答
  •  情歌与酒
    2021-02-01 07:45

    There is this nice snippet (that I use as a git commit hook) to strip the output of an ipython notebook:

    #!/usr/bin/env python
    
    def strip_output(nb):
        for ws in nb.worksheets:
            for cell in ws.cells:
                if hasattr(cell, "outputs"):
                    cell.outputs = []
                if hasattr(cell, "prompt_number"):
                    del cell["prompt_number"]
    
    
    if __name__ == "__main__":
        from sys import stdin, stdout
        from IPython.nbformat.current import read, write
    
        nb = read(stdin, "ipynb")
        strip_output(nb)
        write(nb, stdout, "ipynb")
        stdout.write("\n")
    

    You can easily make it a bit nicer to use, currently you'd have to call it as

    strip_output.py < my_notebook.ipynb > my_notebook_stripped.ipynb
    

提交回复
热议问题