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

如何在Python中替换文件路径指定部分 生成固定目录拷贝目标路径

问题根源

原有代码的逻辑错误出在路径拼接步骤:你调用了filename.replace(),是在已经提取到的原始文件名上做替换,完全没有修改目标目录路径字符串,自然得不到正确的目标路径。

正确实现方案

方案1:使用os.path.join拼接(推荐)

这是Python处理路径拼接的标准方案,会自动适配不同系统的路径分隔符,不会出现斜杠不匹配问题,稳定性更高。

import os.path
original = input(str("Filepath:"))
# 提取原始文件名
filename = os.path.basename(original)
print(f"提取到的原始文件名:{filename}")
# 固定目标目录,仅写目录路径即可
target_dir = r'C:\Users\Admin\Desktop\transfer'
# 拼接得到完整目标路径
target_path = os.path.join(target_dir, filename)
print(f"生成的目标路径:{target_path}")

如果需要适配你举例的C:\Users\Admin\Desktop\Directory2\***场景,只需要把target_dir的值换成r'C:\Users\Admin\Desktop\Directory2'即可,os.path.join会自动把文件名拼接到目录路径末尾。

方案2:字符串替换实现(适配占位符写法场景)

如果你一定要用带占位符的路径做替换,要把替换操作的主体改为目标路径字符串,修改后代码如下:

import os.path
original = input(str("Filepath:"))
filename = os.path.basename(original)
print(filename)
# 路径末尾的filename为占位符,后续会被实际文件名替换
target = r'C:\Users\Admin\Desktop\transfer\filename'
# 对target字符串做替换,而非对filename本身做替换
target_path = target.replace('filename', filename)
print(target_path)

内容的提问来源于stack exchange,提问作者Gašper Melanšek

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.28 07:09:03