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

如何让Python脚本按自身所在路径加载关联文件?

解决脚本按自身路径查找关联文件的问题

不需要切换当前工作目录,直接修改run.py,让它基于自身所在路径定位config.txt即可,以下是两种可靠实现方式:

方法1:使用os.path模块(兼容所有Python版本)

把run.py中打开config.txt的代码替换为:

import os

# 获取脚本自身的绝对路径
script_path = os.path.abspath(__file__)
# 提取脚本所在目录
script_dir = os.path.dirname(script_path)
# 拼接config.txt的绝对路径
config_path = os.path.join(script_dir, "config.txt")

# 打开目标文件
with open(config_path) as f:
    # 后续文件操作
    pass

方法2:使用pathlib模块(Python 3.4+推荐)

如果你的Python版本在3.4及以上,用pathlib会更简洁直观:

from pathlib import Path

# 获取脚本所在目录的绝对路径
script_dir = Path(__file__).parent.resolve()
# 拼接config.txt路径
config_path = script_dir / "config.txt"

# 打开目标文件
with open(config_path) as f:
    # 后续文件操作
    pass

原理说明

  • __file__变量会存储当前脚本的路径(即使通过exec(open(file).read())执行,它指向的依然是E:/myscripts/run.py)
  • 通过os.path.dirname()或Path.parent提取脚本所在目录后,再拼接config.txt的路径,就能让脚本无视当前工作目录,精准找到关联文件。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.15 01:31:22