You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Databricks技术问询:如何嵌套运行Notebook及传递%run动态路径

2. 如何为Databricks的%run命令传递动态路径并调用目标Notebook内的函数?

%run本身不支持直接传入变量作为路径,但可以通过以下两种方式实现动态调用:

方法1:用Python exec执行动态生成的%run命令

通过字符串拼接生成%run语句,再用exec执行,既能动态传入路径,又能保留上下文共享(可直接调用目标Notebook的函数):

# 动态定义目标Notebook路径
target_path = "./dynamic_folder/" + "target_notebook"
# 执行动态生成的%run命令
exec(f"%run {target_path}")
# 直接调用目标Notebook中的函数
target_function()

方法2:使用dbutils.notebook.run()(独立执行场景)

如果不需要共享上下文,仅需执行目标Notebook的逻辑,可使用dbutils.notebook.run(),它原生支持动态路径参数:

dynamic_path = "/Workspace/Users/user@domain.com/dynamic_target"
# 执行目标Notebook,可设置超时时间和传入参数
execution_result = dbutils.notebook.run(
    path=dynamic_path,
    timeout_seconds=3600,
    arguments={"input_param": "test_value"}
)

注意:dbutils.notebook.run()是独立进程执行,不会将目标Notebook的上下文同步到当前环境,无法直接调用其中的函数,适合仅需执行逻辑的场景。


内容的提问来源于stack exchange,提问作者Venkatesh

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.20 03:55:30