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

Azure Synapse:能否在同一工作区从其他Notebook导入模块?

Synapse Notebook 中支持Python模块复用吗?

答案是支持,但不能完全照搬本地Python项目的相对导入逻辑,需要结合Synapse的运行环境特点配置,具体实现方式如下:

方式一:通过工作区文件存储管理自定义模块

  1. 组织模块结构:
    在Synapse Studio的「开发」->「工作区文件」中,创建自定义文件夹(比如utils),将你的日志模块(logger.py)和__init__.py(用于标识Python包)放入该文件夹。

  2. 添加模块路径到Python环境:
    在需要导入模块的Notebook中,先将工作区文件的根路径添加到sys.path,之后就能像常规Python项目一样导入模块:

    import sys
    # 把工作区文件根路径加入Python搜索路径
    sys.path.append("/synfs/workspace")
    
    # 导入自定义日志模块
    from utils.logger import setup_logger
    

方式二:复用Notebook作为模块

如果你的日志逻辑写在另一个Notebook里(而非独立.py文件),可以直接用%run命令加载该Notebook,无需处理路径配置:

# 加载同级目录下的LoggerNotebook
%run ./LoggerNotebook

# 直接使用Notebook中定义的函数
logger = setup_logger()
logger.info("日志测试")

注意事项

  • 工作区文件会同步到Notebook运行环境,但默认不在Python搜索路径内,必须手动添加/synfs/workspace到sys.path;
  • __init__.py的作用和本地Python项目一致,可用于标识包目录、导出指定模块等;
  • 如果模块依赖第三方库,需确保Synapse Spark池已安装对应依赖,或通过工作区包(Workspace Packages)统一管理。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.16 16:15:38