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

如何用Python统一替换文件路径并保留文件名?

替换文件路径保留文件名的Python实现方法

针对你的需求——将列表中所有文件路径替换为统一新目录并保留原文件名,这里提供几种实用的Python实现方式:

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

os.path是Python标准库中处理路径的传统工具,能自动适配不同操作系统的路径分隔符,稳定性强:

import os

original_paths = ['/folder1/folder2/folder3/fileName.csv', '/folderA/folderB/fileNameDifferent.csv', '/folder/fileName2.xlsx']
target_dir = '/newLocation/newfolder'

new_paths = []
for path in original_paths:
    # 提取文件名(自动忽略路径部分)
    filename = os.path.basename(path)
    # 拼接新路径
    new_path = os.path.join(target_dir, filename)
    new_paths.append(new_path)

# 输出结果
for p in new_paths:
    print(p)

输出结果:

/newLocation/newfolder/fileName.csv
/newLocation/newfolder/fileNameDifferent.csv
/newLocation/newfolder/fileName2.xlsx

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

pathlib是Python 3.4引入的面向对象路径处理工具,代码更简洁直观:

from pathlib import Path

original_paths = ['/folder1/folder2/folder3/fileName.csv', '/folderA/folderB/fileNameDifferent.csv', '/folder/fileName2.xlsx']
target_dir = Path('/newLocation/newfolder')

# 用列表推导式快速生成新路径
new_paths = [target_dir / Path(path).name for path in original_paths]

# 输出结果
for p in new_paths:
    print(p)

输出结果和方法1一致,Path(path).name直接获取文件名,/运算符负责路径拼接,无需手动处理分隔符。

方法3:纯字符串分割(不依赖模块,仅适用于Unix风格路径)

如果不想导入模块,可以用字符串分割提取文件名,但这种方式无法自动适配Windows系统的\分隔符,仅适合简单场景:

original_paths = ['/folder1/folder2/folder3/fileName.csv', '/folderA/folderB/fileNameDifferent.csv', '/folder/fileName2.xlsx']
target_dir = '/newLocation/newfolder'

new_paths = []
for path in original_paths:
    # 按斜杠分割路径,取最后一个元素作为文件名
    filename = path.split('/')[-1]
    # 处理路径末尾带斜杠的特殊情况(如'/folder/file.csv/')
    if not filename:
        filename = path.split('/')[-2]
    new_path = f"{target_dir}/{filename}"
    new_paths.append(new_path)

# 输出结果
for p in new_paths:
    print(p)

推荐方案

优先选择os.path或pathlib模块,它们能处理各种边缘情况(如不同系统路径分隔符、路径末尾带斜杠等),代码的健壮性和可移植性更强。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.17 15:25:19