代码之家  ›  专栏  ›  技术社区  ›  Austin

在jupyter笔记本/实验室或contrib扩展中有goto功能吗?

  •  1
  • Austin  · 技术社区  · 6 年前

    我有一个电脑学习项目的笔记本。比如说,它有20个细胞。我想自动化的是,运行前19个单元格,在最后一个单元格更改一个全局变量,然后使用这个全局变量更改再次运行从2开始的所有单元格。

    如果有某种Goto功能,我可以告诉一个单元在完成这个之后去另一个是完美的,但是解决方法也会有用。

    我要避免的是:
    -在全局变量更改后复制所有单元格或
    -需要手动执行这一点,这样我就不能只选择“运行所有”

    1 回复  |  直到 6 年前
        1
  •  3
  •   Ryan Walker    6 年前

    您可以通过在笔记本中运行一些JavaScript以编程方式执行单元格。在笔记本的第21个单元格中输入以下内容:

    %%javascript
    // run the first 19 cells
    var i;
    for(i=0; i<19; i++) {
        Jupyter.notebook.execute_cells([i]);
    }
    
    // set the global in the 20th cell:
    Jupyter.notebook.execute_cells([19]);
    
    // run 2nd through 19th cells again:
    for(i=1; i<19; i++) {
        Jupyter.notebook.execute_cells([i]);
    }