循環所有文件夾(含子文件夾),讀取指定格式文件,另存為其他格式文件(與原有文件在同一級目錄),並刪除原有文件:
#!/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"))