Python 批量删除文件

import cmd, sys
from turtle import *
import os 
import shutil
import asyncio

#需要删除的文件所属的后缀
needDelFilesuffixs = ['.js', '.html', '.css','.png']

#需要排除的文件夹,不去遍历的文件夹及其子集
excludeDirNames = ['assets']

#查看两个列表的元素是否有交集
def inter(a,b):
    return list(set(a)&set(b))

# 批量删除指定的文件
async def delect_allocate_file(file_dir):   

    dle_number = 0
    # 获取这个路径下所有的文件和文件夹
    for root, dirs, files in os.walk(file_dir, topdown=True):
        isExclude = False
        for excludedir in excludeDirNames:
            if not (excludedir in root):
                isExclude = True
        
        if isExclude:
            for filename in files:
                file_name_only, file_extension = os.path.splitext(filename)
                if(len(needDelFilesuffixs)>0):
                    for del_suffix in needDelFilesuffixs:
                        if(file_extension == del_suffix):
                            fileFullName = os.path.join(root, filename)
                            os.remove(fileFullName)  
                            print("删除 %s" % (fileFullName))
                            #删除这个后缀的文件
                            dle_number+=1
                #print(os.path.join(root, filename))


    print("总共删除了 %s 个文件 "%(dle_number)) 

async def files_pos():  
   await delect_allocate_file(r'C:\Users\Edwin\Downloads\cha')


asyncio.run(files_pos())

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值