如何在不重命名源文件的情况下重命名和复制文件?

How to rename and copy a file without renaming the source file?

我正在编程将文件从 USB 驱动器复制到目标文件夹,同时重命名它。我的部分代码使用了这个:

    os.rename(src, srcrename) #renames file in USB drive
    shutil.copy2(srcrename, dstname) #copies file to the destination

问题是,我不希望它像上面那样重命名USB 上的文件。我只是想让它重命名目标位置的文件。

编辑: 不确定为什么它对您不起作用,但是要使用元数据进行复制,请改用 copy2

import os
from shutil import copy2

if __name__ == "__main__":
    src = "D:\videoplayback (1).mp4"
    dest = "E:\vid.mp4"

copy2(src, dest)

请注意使用 windows 路径时的双重反冲

旧答案

从 shutil 导入复制文件 复制文件(src, dst)

如果dst不是一个目录,它将被用作新名称,否则将被复制到里面。