【发布时间】:2020-06-04 17:44:50
【问题描述】:
已针对 Jupyter Notebooks here 提出并回答了这个问题。那里有一个关于 JupyterLab 的建议,以及如何隐藏单元格输出,但不清除它。
这很容易使用Edit > Clear Outputs 下的菜单。但是你如何使用键盘快捷键来做到这一点? Edit 下的许多其他命令已经有自己分配的快捷方式,但没有这个:
【问题讨论】:
标签: python jupyter jupyter-lab
已针对 Jupyter Notebooks here 提出并回答了这个问题。那里有一个关于 JupyterLab 的建议,以及如何隐藏单元格输出,但不清除它。
这很容易使用Edit > Clear Outputs 下的菜单。但是你如何使用键盘快捷键来做到这一点? Edit 下的许多其他命令已经有自己分配的快捷方式,但没有这个:
【问题讨论】:
标签: python jupyter jupyter-lab
答案:
您必须在Settings > Advanced Settings Editor 下分配一个自定义快捷键,方法是在User Preferences 下插入以下内容:
{// List of Keyboard Shortcuts
"shortcuts": [
{
"command": "notebook:clear-cell-output",
"keys": [
"F10"
],
"selector": ".jp-Notebook.jp-mod-editMode"
},
]
}
我选择了F10,但大多数其他键或键组合也应该可以使用。我也用过Ctrl Shift Enter。
放在哪里:
一些细节:
如果您分配了其他快捷方式,请确保将其添加到其他快捷方式列表中的正确位置。
{// List of Keyboard Shortcuts
"shortcuts": [
{
"command": "notebook:run-in-console",
"keys": [
"F9"
],
"selector": ".jp-Notebook.jp-mod-editMode"
},
{
"command": "notebook:clear-cell-output",
"keys": [
"F10"
],
"selector": ".jp-Notebook.jp-mod-editMode"
},
]
}
还有一点神秘:
如果您插入 exact 与第二个框中相同的内容,您会看到项目 Run > Run Selected Text or Current Line in Console 旁边有一个漂亮的 F9:
不会是 Edit > Clear Outputs 的项目,我不得不说我不知道为什么。
据我所知,您分配给所选键盘快捷键的"command": "notebook:clear-cell-output" 应该就是该功能。但好消息是它完全一样。至少对我有用。
请注意,这种方法最适合较新版本的 JupyterLab。对于旧版本,正确的方法会有点不同。
这里有一个 python sn-p 可以立即对其进行测试:
import pandas as pd
import numpy as np
df = pd.DataFrame(np.random.randint(0,100,size=(100, 4)), columns=list('ABCD'))
print(df)
【讨论】:
selector 键下的值更改为.jp-Notebook:focus 以使此功能在您处于“单元格选择” 模式时起作用,而不是在“单元格内容编辑”。否则,如果您使用字符键清除输出(例如我习惯于“Q”),您将无法键入该键。