扫描某文件夹下所有文件(包括子文件夹中的文件),使用os.walk;os.walk() 方法用于通过在目录树种游走输出在目录中的文件名,向上或者向下。
移动复制文件通过os.rename方法,先进行文件是否存在判断,如需更加复杂相同文件判断可以根据文件属性进行判断,此处只使用同名检查,并删除已存在文件,来实现覆盖。
import os
path="C:/Users/kele/Desktop/testfloader"
targetpath="C:/Users/kele/Desktop/targetfloader"
def scan_files(directory,postfix=None):
files_list=[]
path=unicode(directory,'utf-8')
for root, sub_dirs, files in os.walk(path):
for special_file in files:
if postfix:
if special_file.endswith(postfix):
cutmove(root,special_file)
else:
cutmove(root,special_file)
def cutmove(root,special_file):
if os.path.isfile(targetpath+"/"+special_file):
os.remove(targetpath+"/"+special_file)
os.rename(root+"/"+special_file,targetpath+"/"+special_file)
def runmian():
if not os.path.isdir(targetpath):
os.mkdir(targetpath)
scan_files(path,".mobi")
runmian()
更多文章请关注我的博客:https://harveyyeung.github.io
网友评论