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

如何使用shutil复制文件时为指定文件添加编号后缀重命名?

使用shutil实现指定文件复制与自定义重命名

可以通过建立源文件与目标文件名的映射关系,结合shutil.copy2(保留文件元数据)来实现需求,具体代码如下:

import shutil
import os

# 定义源文件路径与目标文件名的映射
file_mapping = {
    "src/blue.png": "blue_1001.png",
    "src/green.png": "green_1002.png"
}

# 确保目标目录存在,不存在则创建
target_dir = "dst"
os.makedirs(target_dir, exist_ok=True)

# 遍历映射完成复制与重命名
for src_path, target_filename in file_mapping.items():
    # 拼接完整的目标文件路径
    target_path = os.path.join(target_dir, target_filename)
    # 执行复制(copy2会保留文件的元数据,如创建时间等)
    shutil.copy2(src_path, target_path)

关键说明:

  • os.makedirs(target_dir, exist_ok=True):避免因目标目录不存在导致复制失败,exist_ok=True表示目录已存在时不会报错
  • shutil.copy2相比shutil.copy会保留文件的元数据(如修改时间、权限等),更适合大多数文件复制场景
  • 通过字典映射可以灵活扩展需要复制的文件及对应的重命名规则

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 21:35:18