如何在python中复制文件重新创建目录结构?

时间:2015-06-15 23:32:21

标签: python copy

src = Folder1/Folder2/file1
(编辑:Folder1还有其他文件和文件夹)

dst = Folder3

复制文件后,我想要有 Folder3/Folder1/Folder2/file1

我认为shutil.copy不会重新创建文件夹而shutil.copytree仅用于文件夹(编辑:如果没有其他文件,我可以直接复制文件夹)。

2 个答案:

答案 0 :(得分:2)

src = "Folder1/Folder2/file1"
dst = "Folder3"+src
dstfolder = os.path.dirname(dst)
if not os.path.exists(dstfolder):
    os.makedirs(dstfolder)
shutil.copy(src,dst)

答案 1 :(得分:0)

如果您的Folder1包含Folder2且Folder2包含file1,您可以使用shutil将Folder1复制到Folder3。执行此操作时,Folder1中的所有内容也将复制到Folder3。

import shutil
shutil.copytree("C:/Users/Desktop/Folder1", "C:/Users/Desktop/Folder3/Folder1")

结果:

Folder3/Folder1/Folder2/file1

请务必在Folder1之后将Folder3放在目的地,如上所述:Folder3/Folder1")