小编给大家分享一下python如何拷贝特定后缀名文件并保留原始目录结构,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!
如下所示:
#!/usr/bin/python # -*- coding: UTF-8 -*- import os import shutil def cp_tree_ext(exts,src,dest): """ Rebuild the director tree like src below dest and copy all files like XXX.exts to dest exts:exetens seperate by blank like "jpg png gif" """ fp={} extss=exts.lower().split() for dn,dns,fns in os.walk(src): for fl in fns: if os.path.splitext(fl.lower())[1][1:] in extss: if dn not in fp.keys(): fp[dn]=[] fp[dn].append(fl) for k,v in fp.items(): relativepath=k[len(src)+1:] newpath=os.path.join(dest,relativepath) for f in v: oldfile=os.path.join(k,f) print("拷贝 ["+oldfile+"] 至 ["+newpath+"]") if not os.path.exists(newpath): os.makedirs(newpath) shutil.copy(oldfile,newpath) #用法如下: # #cp_tree_ext(exts,src,dest) # #exts:以空格分隔的字符串,可多个拓展名,如"bat txt" #src:原目录 #dest:目标目录,如果不存在,则建立 cp_tree_ext('doc docx','/home/lincoln/python/copy/source','/home/lincoln/python/copy/target')
只是段代码,直接调用cp_tree_ext(exts,src,dest) 方法即可。
看完了这篇文章,相信你对“python如何拷贝特定后缀名文件并保留原始目录结构”有了一定的了解,如果想了解更多相关知识,欢迎关注亿速云行业资讯频道,感谢各位的阅读!
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。