在Databricks笔记本之间共享代码

Databricks支持多种在笔记本之间共享代码的方法。它们中的每一个都允许您在笔记本中模块化和共享代码,就像使用图书馆

Databricks还支持将笔记本合并到复杂的工作流中,例如具有依赖关系的管道或基于返回值的if-then-else工作流。看到从另一个笔记本运行一个Databricks笔记本

使用运行%导入笔记本电脑

运行%命令允许您在一个笔记本中包含另一个笔记本。你可以使用运行%模块化你的代码,例如把支持函数放在一个单独的笔记本里。您还可以使用它来连接实现分析步骤的笔记本。当你使用运行%时,被调用的notebook立即执行,其中定义的函数和变量在调用notebook中可用。

在下面的例子中,第一个notebook定义了一个函数,反向的第二个笔记本中可以使用运行%执行魔法shared-code-notebook

共享代码笔记本
笔记本导入示例

因为这两个笔记本都在工作区中的同一个目录中,所以使用前缀。/。/ shared-code-notebook指示路径应相对于当前运行的笔记本进行解析。您可以将笔记本组织到目录中,例如运行%/ dir /笔记本,或使用绝对路径运行%/用户/ username@organization.com/directory/notebook

请注意

  • 运行%一定是在牢房里本身,因为它可以内联运行整个笔记本电脑。

  • 不能使用运行%运行Python文件和进口将该文件中定义的实体放入笔记本。若要从Python文件导入,请参见使用Databricks Repos引用源代码文件.或者,将文件打包到Python库中,创建Databricks图书馆从该Python库,和将库安装到集群中你过去常常使用笔记本。

  • 当你使用运行%要运行包含小部件的笔记本,默认情况下,指定的笔记本使用小部件的默认值运行。您还可以将值传递给小部件;看到使用带有%run的Databricks小部件

使用Databricks Repos引用源代码文件

用于存储在数据库里的笔记本回购,可以从存储库导入源代码文件。

例如,如果一个回购包含一个文件power.py

文件在Databricks repo

你可以将该文件导入到笔记本中,并调用文件中定义的函数:

从Databricks笔记本调用文件

有关在Databricks reppos中使用文件的详细信息,请参见什么是工作区文件?