应用场景:

下载的多个文件夹是压缩包,解压后每个文件夹都有某个网站的推广链接,想要批量的删除该文件

使用环境:win7,python3.6

代码:

1、直接用for循环

由于os.walk()方法自带深度遍历功能,这里直接使用for循环即可找到所有文件夹及文件

import os

def deleteFiles():
for root, dirs, files in os.walk(wanted_del_file_dir):
for file_name in files:
file_path = os.path.join(root, file_name)
if file_name in del_file_list:
print("-" * 20)
print('delete:%s' % file_path) # 查看删除文件具体路径
os.remove(file_path) if __name__ == '__main__':
wanted_del_file_dir = u'D:\\test' # 要批量删除文件的最上级文件夹
del_file_list = ['百度云SVIP长期免费使用.url',
'本教程由我爱学it提供.url',
'高清电子书籍.url',
'更多精品教程.url',
'下载必看.txt',
] deleteFiles()
print('删除完成!')

  

2、用递归的方式:

import os

def readFilename(file_dir):
for root, dirs, files in os.walk(file_dir):
return files, dirs, root def deleteFiles(files, dirs, root):
for i in files:
if i in del_file_list:
print("-" * 20)
print('delete:%s' % os.path.join(root, i), i) # 查看删除文件具体路径
os.remove(os.path.join(root, i)) for j in dirs:
fi, di, ro = readFilename(root + "\\" + j)
deleteFiles(fi, di, ro) if __name__ == '__main__':
wanted_del_file_dir = u'D:\\00python临时\\S15django' # 要批量删除文件的最上级文件夹
files, dirs, root = readFilename(wanted_del_file_dir)
del_file_list = ['百度云SVIP长期免费使用.url',
'本教程由我爱学it提供.url',
'高清电子书籍.url',
'更多精品教程.url',
'下载必看.txt',
]
  #设置要删除的文件
deleteFiles(files, dirs, root)
print('删除完成!')

  

Python小练习:批量删除多个文件夹内的相同文件的更多相关文章

  1. 用Python来实现列举某个文件夹内所有的文件列表

    用Python来实现列举某个文件夹内所有的文件列表.吾八哥我动手写代码之前分析了下,遍历一个文件夹,肯定是需要用到os模块了,查阅模块帮助信息,可知os.listdir()方法可以列举某个文件夹内的所 ...

  2. Python文件操作大全,随机删除文件夹内的任意文件

     在读文件的时候往往需要遍历文件夹,python的os.path包含了很多文件.文件夹操作的方法: os.path.abspath(path) #返回绝对路径os.path.basename(path ...

  3. Java获取一个文件夹内的所有文件(包括所有子文件夹内的)

    输入文件数组.文件夹路径 返回的文件在输入的文件数组中 private void getFiles(ArrayList<File> fileList, String path) { Fil ...

  4. Python批量修改文件夹内所有json文件中部分内容

    #coding=utf-8 import os import json #获取目标文件夹的路径 filedir = os.getcwd()+'/ceshi' #获取文件夹中的文件名称列表 filena ...

  5. python实现将文件夹内所有txt文件合并成一个文件

    新建一个文件夹命名为yuliao,把所有txt文件放进去就ok啦!注意路径中‘/’,windows下路径不是这样. #coding=utf-8  import os #获取目标文件夹的路径 filed ...

  6. C#编写程序监测某个文件夹内是否有文件进行了增,删,改的动作?

    新建一个Console应用程序,项目名称为“FileSystemWatcher”,Copy代码进,编译后就可以用了.代码如下: using System; using System.Collectio ...

  7. java+web上传文件夹内的所有文件

    javaweb上传文件 上传文件的jsp中的部分 上传文件同样可以使用form表单向后端发请求,也可以使用 ajax向后端发请求 1.通过form表单向后端发送请求 <form id=" ...

  8. python 小工具 重命名当前文件夹内所有的文件,升序命名

    背景:一个朋友想升序重命名他的照片,但是太多了不想手动所以,emememem os这个模块,不用说,rename,filedir等 #conding=utf8 import os path = os. ...

  9. C#实现把指定文件夹下的所有文件复制到指定路径下以及修改指定文件的后缀名

    1.实现把指定文件夹下的所有文件复制到指定路径下 public static void copyFiles(string path) { DirectoryInfo dir = new Directo ...

随机推荐

  1. css如何让父元素下的所有子元素高度相同

    小颖最近做的项目中要实现一个样式 ,小颖怕自己忘记了,写个随笔记下来 需求父元素下有多个子元素,并且子元素过多时要实现自动换行,给每个子元素都加了右边框,而每个子元素里的内容多少不一定,这就会产生右边 ...

  2. 【JZOJ5739】【20190706】毒奶

    题目 有\(n\)个现实城市,另有\(n\)个幻想城市 原图中在现实城市存在\(m\)条边,在幻想城市存在\(m-1-n\)条边 一个排列是合法的当且进当显示城市 \(i\) 向幻想城市 \(p_i\ ...

  3. 解决 IDEA 创建 Gradle 项目没有src目录问题

    解决 IDEA 创建 Gradle 项目没有src目录问题 前几天遇到一个问题,就是使用IDEA创建gradle项目后,src目录没有自动生成出来,今天就给大家分享一下怎么解决. 1. 目录:创建的 ...

  4. 每日一问:详细说一下 MeasureSpec.UNSPECIFIED

    详细说一下 MeasureSpec.UNSPECIFIED 前面的文章 我留下了一个疑惑,那就是到底为什么 NestedScrollView 要把子 View 的测量模式强行设置为 MeasureSp ...

  5. IRQL

    IRQL是Interrupt ReQuest Level,中断请求级别. 一个由windows虚拟出来的概念,划分在windows下中断的优先级,这里中断包括了硬中断和软中断,硬中断是由硬件产生,而软 ...

  6. scala eval

    package com.jason case class JJ(d: Double*) object Ss { def main(args: Array[String]): Unit = { impo ...

  7. 数据库连接池, websocket

    转自: https://www.cnblogs.com/xiao987334176/p/9605536.html 一.DButils 什么是数据库连接池 数据库连接池负责分配.管理和释放数据库连接,它 ...

  8. RPC协议

    什么是 RPC? 初步印象 RPC的语义是远程过程调用,在一般的印象中,就是将一个服务调用封装在一个本地方法中,让调用者像使用本地方法一样调用服务.而具体的实现是通过调用方和服务方各自的stub基于T ...

  9. StringTable

    首先看这样一个面试题 // StringTable [ "a", "b" ,"ab" ] hashtable 结构,不能扩容 public ...

  10. shell备份,重命名,删除目录下面的文件

    因为经常会用到shell脚本,所以经常会写一些,但是我从来没有系统的学习过shell脚本,遇到问题,就去看手册,或者google一下,到了一定的程度才发现自己的基础真的好差.下面在系统学习shell时 ...