从jupyter笔记本调用不同文件中编写的函数

时间:2017-06-07 04:58:10

标签: python jupyter-notebook

从jupyter笔记本中,我想调用另一个git rev-list文件中写的函数。部分答案由Reusing code from different IPython notebooks在此帖子drevicko中给出。例如,我正在使用.ipynb中编写的plus_one函数:

plus_one.ipynb

然后,在我当前的笔记本中,我执行单元格:

def plus_one(x):
    print(x + 1)

这给了我没有输出。我的预期输出是%run plus_one.ipynb 3 。如何将参数(4)传递给此脚本?谢谢!

1 个答案:

答案 0 :(得分:4)

来自%run?文档

  

这类似于在系统提示符python file args上运行,   但具有为您提供IPython的追溯的优势   将所有变量加载到交互式命名空间中以供进一步使用

所以来自plus_one.ipynb的所有单元格都会运行,并且它的所有变量都会被添加到调用笔记本的命名空间中。 这不直接调用plus_one方法(除非在另一个笔记本中调用),但它在当前命名空间中定义它,有点像常规python脚本中的import。那一刻,你应该能够在调用笔记本中做plus_one(3),并期望4作为返回值