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

如何从Azure Databricks工作区读取Python文件?解决文件不存在错误

解决Azure Databricks中读取文件的FileNotFoundError问题

问题场景

用户需使用Fernet库对Python文件进行加解密,源代码存储在Azure Databricks工作区中,执行以下读取代码时触发错误:

with open('/Users/abc@gmail.com/Encrypt_Decrypt_POS/Sample.ipynb','r') as f_read:
    file_data = f_read.read()

错误信息:

FileNotFoundError: [Errno 2] No such file or directory: '/Users/abc@gmail.com/Encrypt_Decrypt_POS/Sample

解决方法

Azure Databricks的计算节点本地文件系统无法直接访问工作区的/Users/xxx逻辑路径,需改用适配Databricks环境的文件访问方式:

1. 确认文件存储位置并调整路径

  • 如果文件已上传到DBFS(Databricks文件系统),使用/dbfs/前缀的路径:
    with open('/dbfs/FileStore/Encrypt_Decrypt_POS/Sample.ipynb', 'r') as f_read:
        file_data = f_read.read()
    
  • 如果文件在个人工作区,需先将文件复制到DBFS(工作区文件无法直接用open()读取):
    # 复制工作区文件到DBFS
    dbutils.fs.cp("dbfs:/Workspace/Users/abc@gmail.com/Encrypt_Decrypt_POS/Sample.ipynb", "dbfs:/FileStore/Encrypt_Decrypt_POS/Sample.ipynb")
    
    # 再读取DBFS中的文件
    with open('/dbfs/FileStore/Encrypt_Decrypt_POS/Sample.ipynb', 'r') as f_read:
        file_data = f_read.read()
    

2. 使用Databricks官方工具读取(推荐)

用dbutils.fs工具直接读取文件,无需依赖本地文件系统:

# 读取文件全部内容
file_data = dbutils.fs.head("/FileStore/Encrypt_Decrypt_POS/Sample.ipynb")

3. 验证路径有效性

执行以下命令检查目标路径是否存在:

dbutils.fs.ls("/FileStore/Encrypt_Decrypt_POS/")

若返回结果包含Sample.ipynb,说明路径正确;若为空,需确认文件上传的实际位置。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.15 09:42:42