如果目标文件已存在于python中,如何增加文件名?

时间:2018-07-19 08:43:07

标签: python copy-paste

我想复制文件,例如Ubuntu Nautilus文件管理器。如果目的地已经存在,它将创建具有更大索引的新文件名。我尝试了shutil.copyfile,但是它覆盖了目标文件。如果目标文件已存在于python中,如何增加文件名?

1 个答案:

答案 0 :(得分:-1)

shutil.copyfile(src, dst, *, follow_symlinks=True)¶

将名为src的文件的内容(无元数据)复制到名为dst的文件并返回dstsrcdstare路径名称以字符串形式给出。 dst必须是完整的目标文件名;请查看shutil.copy()以获取接受目标目录路径的副本。如果srcdst指定相同的文件,则会引发SameFileError

目标位置必须可写;否则,将引发OSError例外。如果dst已经存在,它将被替换。不能使用此功能复制特殊文件,例如字符或块设备以及管道。

如果follow_symlinks为假并且src是符号链接,则将创建一个新的符号链接,而不是将文件src的点复制到该链接。

在版本3.3中进行了更改:IOError曾经被使用,而不是OSError。添加了follow_symlinks参数。现在返回dst

在版本3.4中进行了更改:提高错误SameFileErrorinstead。由于前者是后者的子类,因此此更改是向后兼容的。

exception shutil.SameFileError

如果copyfile()中的源和目标是同一文件,则会引发此异常。