1

我想从 a.ipynb 文件运行另一个 b.ipynb 文件。

当我在 a.ipynb 中运行特定代码并运行 b.ipynb 文件时,当我在 Jupyer Notebook 中运行 b.ipynb 时,结果将保存在脚本中。

例如 :

a.ipynb

run b.ipynb ..?

b.ipybn

print("5")

然后运行 ​​a.ipynb 脚本并打开 b.ipynb。

我想在 b.ipynb 中看到

print("5")
>> 5

我应该在 a.ipynb 文件中写什么代码?

4

2 回答 2

0

例如 从另一个 .ipynb 文件导入函数

你必须pip install ipynb

第一个.ipynb

def print():
   print('Stack Overflow')

第二个.ipynb

from ipynb.fs.full.first import print
print()
于 2020-01-29T08:47:32.170 回答
0

您可以简单地使用魔术功能%run

用法:

%run [-n -i -e -G]
     [( -t [-N<N>] | -d [-b<N>] | -p [profile options] )]
     ( -m mod | file ) [args]

文件名后面的参数作为命令行参数传递给程序(放在 sys.argv 中)。然后,控制返回到 IPython 的提示符。

这类似于在系统提示下运行 python 文件 args,但其优点是为您提供 IPython 的回溯,并将所有变量加载到您的交互式命名空间中以供进一步使用(除非使用 -p)。

该文件在最初仅由name ==' main ' 和 sys.argv 组成的命名空间中执行,如图所示。因此,它将其环境视为作为独立程序运行(除了共享全局对象,例如先前导入的模块)。但在执行之后,IPython 交互式命名空间会更新为程序中定义的所有变量(name和 sys.argv 除外)。

于 2020-01-29T08:40:41.170 回答