python - 有没有办法为 jupyter 笔记本中的新单元设置默认标签?

标签 python jupyter-notebook

我需要将标签“nocell”添加到我的大多数单元格中,这有点烦人。有没有办法设置笔记本,以便在创建新单元时默认添加标签? 谢谢!

最佳答案

据我所知,没有内置的方法可以做到这一点。但是,您可以考虑创建 jupyter extension它可以满足您的需要。使用此功能,您可以构建一个扩展程序,用该标签标记任何新添加的单元格,也可以创建一个新的按钮栏操作,单击该操作时,将插入带有该标签的单元格。

更新

以下是有关如何使用自定义 Jupyter 扩展添加的按钮执行此操作的更多详细信息。从这里tutorial ,它提供了有关添加自定义扩展的说明。您需要稍微调整该示例以使其执行您想要的操作。具体来说,您应该调整 main.js 文件。它必须是这样的:

define([
    'base/js/namespace',
    'base/js/events'
], function (Jupyter, events) {

    var add_cell_tagged_nocell = function () {
        Jupyter.notebook.insert_cell_below();
        Jupyter.notebook.select_next();
        var cell = Jupyter.notebook.get_selected_cell();
        cell.metadata.tags = ["nocell"];
    };

    function load_ipython_extension() {
        // Button to add tagged cell
        Jupyter.toolbar.add_buttons_group([
            Jupyter.keyboard_manager.actions.register({
                'help': 'Add cell tagged nocell',
                'icon': 'fa-play-circle',
                'handler': add_cell_tagged_nocell
            }, 'add-tagged-cell', 'Tagged cell')
        ])
    }
    return {
        load_ipython_extension: load_ipython_extension
    };
});

然后,当扩展程序加载时,您将在按钮栏中获得一个额外的按钮可供单击。单击时,将在当前单元格下方插入一个新单元格,并带有“nocell”标签。

enter image description here

enter image description here

存在一个已知问题,即如果显示标签,单元格工具栏不会刷新,但元数据就在那里,并且如果您隐藏并再次显示标签工具栏,标签工具栏将是正确的。

干杯!

关于python - 有没有办法为 jupyter 笔记本中的新单元设置默认标签?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56380928/

相关文章:

python - 如何通过单击按钮突出显示(选择)文本小部件中的文本?

python - 在 jupyter 中具有相对路径的 read_csv

python - 重新运行单元格时,Jupyter notebook 速度极慢

python - 将大型目录树中的所有文件大小归零(删除文件内容,保留文件)

Python/YACC 词法分析器 : Token priority?

python 从给定关键字的文件中删除一定数量的行

jupyter-notebook - Jupyter Notebook不同的方式显示出来

python - 如何在不使用给定 python 的情况下使用 Anaconda 提供的脚本?

html - 如何从上传的 png 文件中打开 Google Colaboratory notebook 单元格中的图像?

python - IPython Notebook 1.1.0 向后不兼容 1.0 吗?我收到 "unreadable notebook"错误