如何自动保存ipython笔记本

时间:2014-02-02 22:48:37

标签: ipython ipython-notebook

有没有人知道是否有选项(或建议的黑客)让IPython笔记本在执行单元格之前自动保存?

很多时候我一直在做一些没有保存的东西很长一段时间,然后我执行了一个愚蠢的命令,在控制台上打印了很多废话,导致我的浏览器没有响应,导致我失去了所有的工作。

定时自动保存也可能起到作用。

3 个答案:

答案 0 :(得分:3)

开发版本已完全实现该功能。按照ipython github

上的说明进行安装

指示形成回购:

  

如果你想攻击某些部分,例如IPython笔记本,在   干净的环境(如virtualenv)你可以使用pip来抓住   快速必要的依赖:

 $ git clone --recursive https://github.com/ipython/ipython.git
 $ cd ipython
 $ pip install -e ".[notebook]"
  

这将安装必要的   包和符号链接IPython进入当前环境,以便   您可以使用本地仓库副本并从任何地方运行它:

 $ ipython notebook

答案 1 :(得分:0)

更新iPython Notebook解决了我在iPython Notebook上遇到的一些问题;例如,它自动保存,或自动更正被禁用,或者%matplotlib inline现在正常工作(在更新之前,我必须在运行--pylab inline时在命令行中使用$ipython notebook。 / p>

当我在我的mac上使用coda时,我通过conda更新了iPython Notebook:

$conda update ipython

答案 2 :(得分:0)

您可以使用以下魔术命令为自动保存功能设置较低的间隔:

local function clone (tab)
    local new = {}

    for key, value in pairs(tab) do
        new[key] = value
    end

    return new
end

local function enable_nil_strings ()
    setfenv(2, setmetatable(clone(getfenv(2)), {
        __index = function (env, key)
            return key
        end 
    }))
end

local function disable_nil_strings()
    setmetatable(getfenv(2), nil)
end

-----------------------------------------------------

print(type(foo), type(bar)) --> nil nil
enable_nil_strings()
print(type(foo), type(bar)) --> string string
disable_nil_strings()
print(type(foo), type(bar)) --> nil nil

每60秒自动保存一次笔记本。