23

有没有办法使用 ipynb 文件中的 json 格式将 ipython/jupyter 笔记本中的单元格标记为只读?(例如,单元格属性"readonly":false或类似的属性。)如果没有,是否有 jquery hack 来查找抑制单元格中的双击事件?

4

3 回答 3

17

是的,使用以下步骤

  1. 选择菜单栏上的视图
  2. 指向单元格工具栏并选择编辑元数据
  3. “编辑元数据”按钮将出现在单元格的右上角。
  4. 单击该按钮并编辑弹出的 json。将可编辑键设置为 true 或 false 以获得所需的效果。
于 2017-10-14T23:29:02.923 回答
14

@Richard Ackon 的回答需要对 JupyterLab 进行调整:

  1. 打开属性检查器。

  2. 聚焦您要锁定的单元格。

  3. 将以下行添加到单元元数据:

    {
        "trusted": true,
        "editable": false,
        "deletable": false
    }
    
  4. 单击勾选保存元数据... Tadah!,您的单元格无法修改或删除。

自 JupyterLab 2.0 以来,Property Inspector 是内置的(请注意,在 JupyterLab 3.0 中默认情况下它已移至右侧边栏)。对于较旧的 JupyterLab 版本,您需要手动修改笔记本文件。

在此处输入图像描述

不幸的是,仍然可以通过在菜单栏 ( Edit> Clear Ouputs) 中有意选择该选项来清除输出。当然,只有在您确实想要清除输出而不是通过运行单元格来更新它们时才会发生这种情况。

资源

于 2019-09-17T14:57:49.627 回答
3

IPython 有一个扩展,应该是这样的:

只读单元扩展

让它工作是另一回事,但它就在那里。

于 2014-11-28T12:51:34.310 回答