键盘快捷键可在Jupyter Notebook中清除单元格输出


76

有谁知道键盘快捷键是什么来清除(而不是切换)Jupyter Notebook中的单元格输出?


我提出了一个问题:github.com/jupyter/notebook/issues/1925
某人

4
警告!Esc + d + d删除单元格!
duhaime

如果您也不想失去其他输出,则可以尝试“编辑/清除所有输出”方法。例如,在将笔记本从colab提交到github之前,它可能会很有用。
加布里埃尔·

Answers:


76

您可以在用户界面中设置自己的快捷方式(对于最新的主版本):

在此处输入图片说明

可以Help > Keyboard Shortcuts在任何打开的笔记本中找到此菜单。


33
具体来说,这Help > Edit Keyboard Shortcuts在任何打开的笔记本电脑中都没有。
Nate

上面的好建议。我个人喜欢清除CLI的输出,因此也想在此共享该信息。 jupyter nbconvert --ClearOutputPreprocessor.enabled=True --inplace Notebook.ipynb 更多信息-> stackoverflow.com/questions/28908319/…–
Pramit

1
Jupyter Lab中没有此选项
ColinMac '20

63

对于小于5的版本:

选项1-快速破解:

将单元格类型更改为raw,然后返回代码:EscRY将丢弃输出。

选项2-自定义快捷方式(无GUI):

为此,您需要编辑custom.js通常位于的文件~/.jupyter/custom/custom.js(如果不存在,请创建它)。

在其中,您必须添加

require(['base/js/namespace']) {
    // setup 'ctrl-l' as shortcut for clearing current output
    Jupyter.keyboard_manager.command_shortcuts
           .add_shortcut('ctrl-l', 'jupyter-notebook:clear-cell-output');
}

您可以在其中添加所有喜欢的奇特功能的快捷方式,因为第二个参数可以是一个函数(docs

如果要映射其他标准命令,则可以通过在笔记本中运行以下命令来转储所有可用命令的列表:

from IPython.core.display import Javascript

js = """
  var jc_html = "";
  var jc_array = Object.keys(IPython.notebook.keyboard_manager.command_shortcuts.actions._actions);
  for (var i=0;i<jc_array.length;i++) {
    jc_html = jc_html + jc_array[i] + "<br >";
  }
  element.html(jc_html);
  """

Javascript(data=js, lib=None, css=None)

15

在单元格开始处添加以下内容并运行它:

from IPython.display import clear_output
clear_output(wait=True)

3
如果您要在不删除所有打印命令的情况下运行单元,则很有用。
罗宾诺

6

只需为JupyterLab用户添加即可Ctrl(高级设置)并将以下内容粘贴在键盘快捷键下的“用户参考”中,对我来说很有用。

{
"shortcuts": [
        {
            "command": "notebook:hide-cell-outputs",
            "keys": [
                "H"
            ],
            "selector": ".jp-Notebook:focus"
        },
        {
            "command": "notebook:show-cell-outputs",
            "keys": [
                "Shift H"
            ],
            "selector": ".jp-Notebook:focus"
        }
    ]
}

您为我节省了很多时间:D
imitusov '20

@ИльяМитусов非常高兴听到它!我只是将当前的键绑定放到该存储库中,以防它们有用,并将尽我所能保持最新。
M.GEM '02

4

取决于您是否将命令选项板视为快捷方式。我做。

  1. 按'control-shift-p',将打开命令面板。
  2. 然后输入“ clear cell output”。这样您就可以选择命令来清除输出。

在此处输入图片说明


By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.