笔记本验证失败 Jupyter

My *_*ork 3 python jupyter jupyter-notebook

这不是Notebook Validation Failed的副本。

我有一个 Jupyter ntb,它直到最近都运行良好。无论我做什么,我都会遇到那些正在改变的错误(我附上了一些例子),我用 ntb 做什么并不重要(我尝试重新启动内核,重新启动 Jupyter)。此外,它仅发生在此 ntb 中,即使在同一会话中同时运行,也不会发生在其他 ntb 中。我试图搜索,但找不到任何东西。我在 Jupyter 中得到的是: 在此处输入图片说明

其中有很多,相似但不同:

The save operation succeeded, but the notebook does not appear to be valid. The validation error was:
Notebook validation failed: Non-unique cell id 'geological-poker' detected. Corrected to 'front-hampshire'.:
"<UNKNOWN>"
Run Code Online (Sandbox Code Playgroud)

或其他:

Notebook validation failed: Non-unique cell id 'medieval-nebraska' detected. Corrected to 'stock-eating'.:
"<UNKNOWN>"
Run Code Online (Sandbox Code Playgroud)
Notebook validation failed: Non-unique cell id 'intense-award' detected. Corrected to 'blocked-garage'.:
"<UNKNOWN>"
Run Code Online (Sandbox Code Playgroud)

我在终端得到的是:

Notebook JSON is invalid: Non-unique cell id 'medieval-nebraska' detected. Corrected to 'convinced-vacation'.
Run Code Online (Sandbox Code Playgroud)

或者

Notebook JSON is invalid: Non-unique cell id 'medieval-nebraska' detected. Corrected to 'described-commerce'.
Run Code Online (Sandbox Code Playgroud)
Notebook JSON is invalid: Non-unique cell id 'meaning-victoria' detected. Corrected to 'occasional-numbers'.
Run Code Online (Sandbox Code Playgroud)
Notebook JSON is invalid: Non-unique cell id 'eastern-buyer' detected. Corrected to 'english-benchmark'.
Run Code Online (Sandbox Code Playgroud)

知道发生了什么以及如何解决吗?


更新:它以某种方式修复了一段时间但然后它又开始做同样的事情我仍然不明白它是什么以及它是如何修复和再次破坏的......一个修复是制作ntb的副本然后丢弃旧的。

Elj*_*Elj 37

我还碰巧找到了另一个有效的解决方案:

首先选择Jupyter Notebook中的所有单元格,然后按“剪切/剪刀”按钮(不要惊慌,此时你的Notebook将是空的),最后按“粘贴”按钮。

这是来自https://github.com/jupyter/notebook/issues/6001#issuecomment-959828688

  • 如果笔记本太大并且粘贴操作花费太多时间,您可能有理由感到恐慌。在应用上述解决方案之前,最好先复制笔记本。 (11认同)

Dat*_*med 10

简单的答案

步骤 1:使用 剪刀选项剪切Jupyter 笔记本中的所有单元格,如图所示。 在此输入图像描述

步骤 2:立即保存笔记本,然后使用粘贴选项粘贴回上一步中剪切的 单元格,如图所示。在此输入图像描述

第 3 步:再次保存,您的错误现在应该已修复!快点,快乐编码。


小智 5

我有同样的问题,在阅读之后,似乎原因是从其他会话中创建的其他笔记本复制/粘贴单元格。我还没有找到修复它的方法,但至少你可以通过复制单元格的内容而不是单元格本身来防止它发生。

  • 嗨@julrods,感谢您的回答。我已经忘记我问过它了。我找到了另一种解决方案,即制作 ntb 的副本,然后丢弃旧的,我将更新我的问题。我不完全确定它只发生在你所描述的情况中——当我在一段时间后在 ntb 工作时,它发生在我身上,当时我没有复制单元格,它突然出现了。但是您是否有您所发现的内容的链接和来源? (2认同)