循环所有文件夹(含子文件夹),读取指定格式文件,另存为其他格式文件(与原有文件在同一级目录),并删除原有文件:
#!/usr/bin/python # -*- coding: utf-8 -*- # 遍历所有文件夹,将指定格式文件,批量另存为其他文件(或其他格式) import os import re filter = [".txt"] #设置过滤后的文件类型 当然可以设置多个类型 def all_path(dirname): #result = []#所有的文件 for maindir, subdir, file_name_list in os.walk(dirname): # print(maindir) #当前主目录 # print(subdir) #当前主目录下的所有目录 # print(file_name_list) #当前主目录下的所有文件 for filename in file_name_list: apath = os.path.join(maindir, filename)#合并成一个完整路径 portion = os.path.splitext(apath) ext = portion[1] # 获取文件后缀 [0]获取的是除了文件名以外的内容 if ext in filter: # 以二进制格式读取文件 ms = open(apath,'rb') # 以二进制读写模式打开目标文件(目标文件不存在时则创建) targetFile = open(portion[0] + '.html', 'wb+') for line in ms.readlines(): targetFile.write(line) # 逐行写入目标文件中 ms.close() targetFile.close() # 删除原文件 os.remove(apath) #return result print(all_path("F:Temp"))