如何使用 `get_ipython().payload_manager.write_payload` 创建 markdown 单元格?

问题描述 投票:0回答:1

我想以编程方式在 Jupyter 笔记本中创建多个 Markdown 单元。

以下函数适用于代码单元格,但不适用于 Markdown 单元格。

def create_new_cell(contents):
    from IPython.core.getipython import get_ipython
    shell = get_ipython()

    payload = {
        "source": "set_next_input",
        "text": contents,
        "replace": False
    }
    shell.payload_manager.write_payload(payload, single=False)

我尝试添加元数据设置,但不起作用。

def create_new_cell(contents):
    from IPython.core.getipython import get_ipython
    shell = get_ipython()

    payload = {
        "source": "set_next_input",
        "text": contents,
        "metadata": {"cell_type": "markdown"},
        "replace": False
    }
    shell.payload_manager.write_payload(payload, single=False)

还有其他解决办法吗?

jupyter-notebook ipython jupyter-lab
1个回答
0
投票

看看我在 Jupyter's Discourse 上的回答。你可能会包裹

commands.execute('notebook:insert-cell-below').then(() => {
        commands.execute('notebook:change-cell-to-markdown');
      });

循环。

© www.soinside.com 2019 - 2024. All rights reserved.