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

如何引用当前文件所在文件夹外的文件?使用src路径无效

跨文件夹文件引用失败的解决方法

你用相对路径src/data/beemovie.txt无法引用外部文件,核心问题是Python解析文件路径时,默认以当前运行脚本的工作目录为基准,而非脚本文件本身的存放位置。以下是几种可行的解决办法:

  • 直接使用绝对路径
    直接写出文件的完整绝对路径,比如:

    f = open('/home/yourname/project/src/data/beemovie.txt','r')
    txt = f.readlines()
    print(txt)
    f.close()
    

    注意:换运行环境后需要手动修改路径。

  • 基于脚本位置构造绝对路径(推荐)
    利用__file__变量获取当前脚本的绝对路径,再拼接目标文件路径,适配不同环境:

    import os
    
    # 获取当前脚本所在文件夹的绝对路径
    script_folder = os.path.dirname(os.path.abspath(__file__))
    # 拼接目标文件路径(根据实际目录层级调整../的数量)
    target_path = os.path.join(script_folder, '../src/data/beemovie.txt')
    # 规范化路径,自动处理../这类相对符号
    target_path = os.path.normpath(target_path)
    
    with open(target_path,'r') as f:
        txt = f.readlines()
        print(txt)
    

    这里改用with语句,无需手动关闭文件,更安全。

  • 切换工作目录
    先切换到目标文件所在的父目录,再用相对路径访问:

    import os
    
    # 切换工作目录到src的上级目录(根据实际层级调整)
    os.chdir('../')
    with open('src/data/beemovie.txt','r') as f:
        txt = f.readlines()
        print(txt)
    

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.23 03:24:26