Maison >développement back-end >Tutoriel Python >Python copie les fichiers avec des suffixes spécifiques et conserve la structure de répertoires d'origine.
Cet article présente principalement des exemples de copie de fichiers avec des noms de suffixes spécifiques en Python et de conservation de la structure de répertoires d'origine. Il a une certaine valeur de référence. Maintenant, je le partage avec vous. Les amis dans le besoin peuvent s'y référer
. est le suivant :
#!/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')
est juste un morceau de code, appelez directement cp_tree_ext(exts, src,dest) Utilisez simplement la méthode.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!