繁体   English   中英

jupyter 4 笔记本的程序化创建?

[英]programmatic creation of jupyter 4 notebooks?

我想以编程方式生成一些*.ipnb作为我建模工作的一部分,以便我可以将带降价注释的带注释的数字和代码转储到公共 git 存储库。 理想情况下,我将创建一个新笔记本并在每次运行新模型时发布它。

这个要点中,我发现了一个这样做的模式,涉及: from IPython.nbformat import current as nbf

但是,自去年春天以来, IPython.nbformat.current已被弃用,实际上在 jupyter/ipython 4.0.1 中不存在,因此这对我不起作用。

现在什么是正确的模式?

哦。

IPython.nbformat已弃用。

nbformat不是...

这似乎工作得很好:

from nbformat import current as nbf


def make_notebook(outPath: str, description: str):
    nb = nbf.new_notebook()
    code = "1+2"
    cells = [nbf.new_text_cell('markdown', description), nbf.new_code_cell(code)]
    nb['worksheets'].append(nbf.new_worksheet(cells=cells))

    fname = 'test.ipynb'

    with open(path.join(outPath,fname), 'w') as _:
        nbf.write(nb, _, 'ipynb')

v4 的更新版本

可能有更好的版本,这对我有用。

from nbformat import v4 as nbf
import nbformat
from os import path



def make_notebook(outPath: str, description: str):
    nb = nbf.new_notebook()
    code = "1+2"
    cells = [nbf.new_markdown_cell( description), nbf.new_code_cell(code)]
    nb['cells'] = cells

    fname = 'test.ipynb'
    print(nb)
    with open(path.join(outPath,fname), 'w') as _:
        nbformat.write(nb, _)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM