Python小练习:批量删除多个文件夹内的相同文件
应用场景:
下载的多个文件夹是压缩包,解压后每个文件夹都有某个网站的推广链接,想要批量的删除该文件
使用环境: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小练习:批量删除多个文件夹内的相同文件的更多相关文章
- 用Python来实现列举某个文件夹内所有的文件列表
用Python来实现列举某个文件夹内所有的文件列表.吾八哥我动手写代码之前分析了下,遍历一个文件夹,肯定是需要用到os模块了,查阅模块帮助信息,可知os.listdir()方法可以列举某个文件夹内的所 ...
- Python文件操作大全,随机删除文件夹内的任意文件
在读文件的时候往往需要遍历文件夹,python的os.path包含了很多文件.文件夹操作的方法: os.path.abspath(path) #返回绝对路径os.path.basename(path ...
- Java获取一个文件夹内的所有文件(包括所有子文件夹内的)
输入文件数组.文件夹路径 返回的文件在输入的文件数组中 private void getFiles(ArrayList<File> fileList, String path) { Fil ...
- Python批量修改文件夹内所有json文件中部分内容
#coding=utf-8 import os import json #获取目标文件夹的路径 filedir = os.getcwd()+'/ceshi' #获取文件夹中的文件名称列表 filena ...
- python实现将文件夹内所有txt文件合并成一个文件
新建一个文件夹命名为yuliao,把所有txt文件放进去就ok啦!注意路径中‘/’,windows下路径不是这样. #coding=utf-8 import os #获取目标文件夹的路径 filed ...
- C#编写程序监测某个文件夹内是否有文件进行了增,删,改的动作?
新建一个Console应用程序,项目名称为“FileSystemWatcher”,Copy代码进,编译后就可以用了.代码如下: using System; using System.Collectio ...
- java+web上传文件夹内的所有文件
javaweb上传文件 上传文件的jsp中的部分 上传文件同样可以使用form表单向后端发请求,也可以使用 ajax向后端发请求 1.通过form表单向后端发送请求 <form id=" ...
- python 小工具 重命名当前文件夹内所有的文件,升序命名
背景:一个朋友想升序重命名他的照片,但是太多了不想手动所以,emememem os这个模块,不用说,rename,filedir等 #conding=utf8 import os path = os. ...
- C#实现把指定文件夹下的所有文件复制到指定路径下以及修改指定文件的后缀名
1.实现把指定文件夹下的所有文件复制到指定路径下 public static void copyFiles(string path) { DirectoryInfo dir = new Directo ...
随机推荐
- LeetCode 1213. Intersection of Three Sorted Arrays
原题链接在这里:https://leetcode.com/problems/intersection-of-three-sorted-arrays/ 题目: Given three integer a ...
- three.js 测试1
关键看一下里面的注释 代码: <!DOCTYPE html> <html> <head> <meta charset="utf-8" /& ...
- 联想笔记本上Ubuntu无线网卡问题
可能有两个问题: 1.无无线网卡驱动 2.无线网卡驱动不能自动加载 问题1:无线网卡驱动 百度出网卡驱动iwlwifi-9000,如iwlwifi-9000-pu-b0-jf-b0-34.618819 ...
- memcpy和strcpy的区别
strcpy和memcpy主要有以下3方面的区别. 复制的内容不同.strcpy只能复制字符串,而memcpy可以复制任意内容,例如字符数组.整型.结构体.类等. 复制的方法不同.strcpy不需要指 ...
- 二分类问题F-score评判指标(转载)
分类模型的评价指标Fscore 小书匠深度学习 分类方法常用的评估模型好坏的方法. 0.预设问题 假设我现在有一个二分类任务,是分析100封邮件是否是垃圾邮件,其中不是垃圾邮件有65封,是垃圾邮件有3 ...
- mac下操作小记
安装homebrew https://juejin.im/post/5c738bacf265da2deb6aaf97 主要问题:按官网安装方法(/usr/bin/ruby -e "$(cur ...
- C语言实现FTP服务器
公共部分代码 /* common.h */ #ifndef COMMON_H #define COMMON_H #include <arpa/inet.h> #include <ct ...
- Adobe Illustrator 入门 新建 保存图片
下载 AI 的破解版 我这里用的是 Adobe_Illustrator CC 2019 Lite 精简特别版 V23.0.2 简体中文版 64位 安装略 新建文档 通常是 A4 图形绘制 选择 矩形工 ...
- 【Gamma】测试报告
测试方法及过程 在正式发布前,我们对后端代码.前后端接口.服务器以及前端的页面和功能做了多种测试,主要包括对后端代码的单元测试.针对接口的测试.压力测试以及功能测试. 后端代码单元测试 该部分测试主要 ...
- Idea 进行断点调试的 快捷键
快捷键 功能描述F8 单步调试,不进入函数内部F7 单步调试,进入函数内部Shift+F7 选择要进入的函数Shift+F8 跳出函数Alt+F9 运行到断点Alt+F8 执行表达式查看结果F9 继续 ...