Firefox中的iPython Notebook - 警告:无响应的脚本

Sta*_*ckG 4 python firefox ipython-notebook

我在Firefox的iPython笔记本上运行了很长的脚本很长一段时间.我回来了,似乎已经挂了,所以我把它保存起来并关上了.

当我重新打开脚本时,弹出一个对话框,出现以下错误:

警告:无响应的脚本

此页面上的脚本可能正忙,或者堆栈溢出可能已停止响应.您可以立即停止脚本,在调试器中打开脚本,或让脚本继续.

选项包括"继续","停止脚本"和"调试脚本".单击其中任何一个导致相同的结果,对话框消失,iPython笔记本无响应(例如,ctrl + enter在当前单元格中创建换行符而不是执行它).

最糟糕的是,脚本底部的单元格似乎已被切断.它们包含一些看似已经消失的有价值的代码,这是一个非常糟糕的结果!

我试过回滚,但最后一个回滚点也显示了底部切断.这里的任何支持非常感谢!

Sta*_*ckG 7

我现在已经解决了这个问题并将其留在这里,希望它能帮助其他人.

问题的原因似乎是其中一个单元的输出过长 - 这条线以下的所有内容都已在iPython浏览器中被切断,但我发现它仍然存在于.ipynb文件中,而我所要做的就是删除一些输出行,当我重新打开文件时,它运行没有问题,我的代码已被切断再次可用.

笔记本电脑以JSON格式存储所有内容.在我的情况下,我需要删除其中一个单元格的输出,我这样做:

  1. 浏览到您的iPython笔记本目录(不是ipython.exe所在的目录) - 对我来说,他们在 C:\Users\myname\Documents\IPython Notebooks
  2. 右键单击有问题的notebook.ipynb文件,然后在文本编辑器中编辑 - 我的选择是Notepad ++
  3. 向下滚动到生成大量输出行的单元格.这些行中的每一行都在单元格的outputs属性中"output_type": "stream"
  4. 删除任意数量的这些输出条目,但一定要删除output属性本身之外的任何内容,并确保从尾部逗号的后面删除以下逗号的前面,以便生成的JSON格式正确

典型的输出行如下所示,删除数百个输出使我的脚本在浏览器中再次运行:

  {
   "output_type": "stream",
   "stream": "stdout",
   "text": [
    "\n",
    "Added 150000 records so far"
   ]
  },
Run Code Online (Sandbox Code Playgroud)