Databricks中如何从关联Git仓库导入自定义模块?
工作目录与仓库路径不匹配
Databricks Notebook的默认工作目录可能并非仓库根目录。即使sys.path包含仓库路径,若当前工作目录不在Repo_Name下,或sys.path中添加的是仓库的父目录而非Repo_Name本身,都会导致无法找到Checks模块。可执行%pwd查看当前工作目录,或打印sys.path确认仓库根目录是否正确加入。大小写不匹配
Python对模块名和文件名大小写敏感。确认import Checks语句的大小写与Checks.py文件名完全一致——Databricks关联GitHub仓库时会保留文件名大小写,任何不一致都会触发ModuleNotFoundError。仓库同步延迟
GitHub仓库关联到Databricks后可能存在同步延迟,Checks.py可能未被正确加载到工作区。可尝试刷新仓库页面、重新关联仓库,或在Databricks文件浏览器中确认Checks.py存在且内容完整。sys.path路径问题
检查sys.path中的仓库路径是否正确:若添加的是仓库的父目录而非Repo_Name本身,或路径被其他优先级更高的目录覆盖,都会导致导入失败。执行print(sys.path)查看路径列表,确认Repo_Name的绝对路径在列表中且位置合理。缺少__init__.py文件(特定场景)
尽管Python 3.3+支持无__init__.py的命名空间包,但部分Databricks环境可能要求在Repo_Name目录下添加空的__init__.py文件,将目录标记为可导入的包。添加该文件后重新尝试导入。
内容的提问来源于stack exchange,提问作者MKJ

