使用参数从另一个笔记本运行 Jupyter 笔记本

Ale*_*nov 6 python ipython jupyter-notebook

我想在一个循环中运行完整的 Jupyter 笔记本,为笔记本的每次运行传递不同的参数。我可以使用插件传递参数,如下所述: 将命令行参数传递给 jupyter/ipython 笔记本中的 argv,但这似乎过于麻烦。有没有更简单直接的方法来做到这一点?

Ale*_*nov 8

%run参数(被调用的笔记本的变量)可以在调用之前在单元格中简单地初始化。在调用笔记本时:

for i in range (1,3):
    for j in range (0,4):
        param1 = i
        param2 = j 
        %run ./foo.ipynb
Run Code Online (Sandbox Code Playgroud)

为了能够在正在运行的笔记本中初始化这些变量,以便于单独使用(作为整体运行),可以在初始化之前检查变量是否存在如何检查变量是否存在?。在foo.ipynb

if not 'param1' in locals():
    param1 = 1
Run Code Online (Sandbox Code Playgroud)

由于整个笔记本的多次运行的输出将在一个单元格中,因此自动滚动(默认情况下处于打开状态)可能会启动。要禁用它,请按照“禁用 iPython Notebook 自动滚动”cell操作,例如在菜单- all output> ->中toggle autoscrolling