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

Python中如何获取脚本同目录文件路径并使用shutil移动文件?

解决Python脚本移动同目录文件的路径问题

要获取与脚本同目录的文件的正确路径,核心是先拿到脚本自身的绝对目录,再拼接文件名,避免依赖当前工作目录带来的问题。

修正后的代码

import shutil
import os

# 获取当前登录用户名
user_name = os.getlogin()
# 获取脚本所在的绝对目录
script_dir = os.path.dirname(os.path.abspath(__file__))
# 拼接源文件的完整路径
source_path = os.path.join(script_dir, "file.foo")
# 拼接目标路径(用os.path.join更符合跨平台规范)
target_dir = os.path.join("C:", "Users", user_name, "AppData", "Roaming", "Microsoft", "Windows", "Start Menu", "Programs", "Startup")

# 执行移动操作
shutil.move(source_path, target_dir)

关键说明

  • os.path.abspath(__file__):获取当前脚本的绝对路径(包含脚本文件名)
  • os.path.dirname(...):从脚本的绝对路径中提取出所在目录
  • os.path.join():自动处理不同操作系统的路径分隔符(Windows用\,Linux/macOS用/),比手动拼接字符串更可靠
  • 原代码中./file.foo未加引号是语法错误,必须用字符串包裹路径

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.08 19:15:30