Python 循环所有文件夹(含子文件夹),读取指定格式文件,另存为其他格式文件

循环所有文件夹(含子文件夹),读取指定格式文件,另存为其他格式文件(与原有文件在同一级目录),并删除原有文件:

#!/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"))

 

posted @ 2019-05-12 22:30  软件开发-汪七北  阅读(8200)  评论(0编辑  收藏  举报