python复制文件夹有两种方法:
1、使用shutil模块:(要保存的路径必须事先不存在)
#!/usr/bin/env python # -*- coding: utf-8 -*- # @Time : 2019/1/4 12:35 # @Author : zxb import os import shutil def handleAssetsFile(path,path1): #复制目录,olddir和newdir都只能是目录,且newdir必须不存在 if os.path.exists(path1): print(path1, '存在先删除') shutil.rmtree(path1) print('拷贝代码文件夹开始...') shutil.copytree(path, path1) print('拷贝代码文件夹结束! ') if __name__ == "__main__": path = r'E:1' path_save = r'E:11' handleAssetsFile(path, path_save)
2、使用shell模块:(要保存的路径事先可以存在)
import os from win32com.shell import shell,shellcon # debug = False def fuzhi(filename1,filename2):#filename1是原路径,filename2是要保存的路径 print('fuzhi', filename1,filename2) # if not debug: res = shell.SHFileOperation((0, shellcon.FO_COPY, filename1, filename2, shellcon.FOF_NOCONFIRMATION | shellcon.FOF_NOERRORUI | shellcon.FOF_SILENT, None, None)) if __name__ == '__main__': path_yuan = r'E: 105yuan/' path_xian = r'E: 105xian/' fuzhi(path_yuan,path_xian)
FOF_SILENT //不产生正在复制的对话框
FOF_NOCONFIRMMKDIR//如果目的目录不存在,就默认创建
FOF_NOCONFIRMATION //不出现确认文件替换对话框(Confirmation Dialog)(默认替换原来的文i件)
FOF_NOERRORUI//不出现错误对话框
最好不要同时使用FOF_NOERRORUI,FOF_NOCONFIRMMKDIR,因为FOF_NOCONFIRMMKDIR屏蔽了missing directory Error
但FOF_NOERROR又屏蔽了missing directory Error,那么在同时使用FOF_NOERRORUI,FOF_NOCONFIRMMKDIR
SHFileOperation用法请移步:https://www.cnblogs.com/xiaodai0/p/10174877.html