Jupyter笔记本清除小部件状态

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

我在 Jupyter 笔记本中使用小部件并将其状态(例如,选中“设置 -> 自动保存小部件状态”)保存到笔记本文件中。 为了对该笔记本进行 git 版本控制,我想再次清除小部件状态。

我尝试过:

  1. 取消选中Jupyter实验室前端中的设置,重新启动内核,再次保存。
  2. 取消选中设置,重新启动内核,保存,然后(可怕的)从json文件中删除“widgets”字段。

第一种方法只是再次保存状态。 对于第二种不可用的方法,每次我保存笔记本时,“小部件”字段都会恢复。

首选解决方案是在 Jupyter 实验室内禁用状态保存。

使用过的版本:

  • Jupyterlab 3.4.2
  • Jupyterlab_widgets 1.1.0
  • IPyWidgets 7.7.0
  • Python 3.10

PS:我最终使用了预提交钩子,我对其进行了修补以删除状态pre-commit-jupyter

python jupyter-notebook jupyter-lab pre-commit-hook
1个回答
0
投票

只要这样做,它就会帮你清理干净:

jq 'del(.metadata.widgets)' YourNotebook.ipynb > YourNotebook.ipynb

请注意,只有当 Jupyter JSON 格式在这方面稳定时它才有效。

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