【问题标题】:Running a Jupyter notebook from another notebook从另一个笔记本运行 Jupyter 笔记本
【发布时间】:2018-09-23 20:06:34
【问题描述】:

我想知道是否可以从另一个 *.ipynb 文件运行 *.ipynb 文件并获得返回值。 我知道我们可以这样运行:

%run ./called_notebook.ipynb

被调用的笔记本包含:

def foo():
    print(1)
    return 2
foo()

但它只打印“1”而没有让我有机会处理返回的值。甚至可能吗?是否存在以下类型的代码:

a = %run ./called_notebook.ipynb

?

谢谢!

【问题讨论】:

    标签: python return jupyter-notebook


    【解决方案1】:

    我建议从新笔记本运行 foo 函数。换句话说:

    %run ./called_notebook.ipynb
    foo()
    

    在我看来,这是使用 %run 魔法命令的最佳实践。将您的高级 API 存储在单独的笔记本中(例如 foo),但保持您的函数调用在主笔记本中可见。

    【讨论】:

    • 请注意,它甚至可以在if 语句中,例如:if need_to_run(): %run ...
    • 如果该笔记本在全局范围内定义了一些巨大的对象,是否会在您每次使用 run 命令时重新实例化该对象?
    • 甜蜜!运行一个问题/备注...称为_notebook,所有打印/显示/等。命令显示,但单元格末尾的任何结果通常会显示,但不会如此。
    • 如何从不同的笔记本运行一个笔记本的所有单元
    猜你喜欢
    • 2020-05-17
    • 2020-03-11
    • 1970-01-01
    • 2020-08-26
    • 2020-11-18
    • 2021-07-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多