python寻找含有关键字文件和删除文件夹方式
作者:solitary_w 时间:2021-08-22 05:46:32
寻找含有关键字文件和删除文件夹
我们往往在操作文件时,会不知道文件具体的路径。
一般如果只是处理一个文件的话我们可以在文件所在的文件夹下运行python脚本,默认为当前脚本。
而如果一个文件有多层目录结构时,往往这种方法很有局限性。
例如在处理mesaage文件时,先要解压一个压缩文件,其中有两个文件夹,而每个文件夹下的第四层目录中都有一个message文件,现在所要做的就是将每个message文件读入,然后进行分析。
若使用绝对路径去读入文件无疑降低了代码的重用性,所以就写了一个寻找关键字文件的函数。(函数还有很多漏洞,但能解决燃眉之急了。)
#寻找关键字文件
def findfile(keyword,root):
#keyword为关键字,root为文件夹路径
filelist=[] #存放每个文件
rfilelist=[] #存放匹配文件
for root,dirs,files in os.walk(root):
for name in files:
filelist.append(os.path.join(root,name))
#遍历路径文件下的所有文件夹,将所有文件放入filelist
for i in filelist:
if os.path.isfile(i):
if keyword in os.path.basename(os.path.splitext(i)[0]):
rfilelist.append(i)
else:
pass
else:
pass
return rfilelist
以上为简单的关键字文件查找
有时候解压出来的文件会很多,而我们希望获得了有用的数据后,将解压出来的文件再删除掉,所以就有了删除解压文件的函数。
在此处先要导入shutil包
import shutil
#filelist 为解压出来的文件列表
def delete_unzip(filelist):
thfile=filelist
for i in thfile:
shutil.rmtree(os.path.splitext(i)[0])
python删除一个文件或文件夹
使用python删除一个文件或文件夹
需要使用os模块
import os
os.remove(path) # path是文件的路径,如果这个路径是一个文件夹,则会抛出OSError的错误,这时需用用rmdir()来删除
os.rmdir(path) # path是文件夹路径,注意文件夹需要时空的才能被删除
os.unlink('F:\新建文本文档.txt') # unlink的功能和remove一样是删除一个文件,但是删除一个删除一个正在使用的文件会报错。
import os
path = 'F:/新建文本文档.txt' # 文件路径
if os.path.exists(path): # 如果文件存在
# 删除文件,可使用以下两种方法。
os.remove(path)
#os.unlink(path)
else:
print('no such file:%s'%my_file) # 则返回文件不存在
import os
os.removedirs(path) # 递归地删除目录。如果子目录成功被删除,则将会成功删除父目录,子目录没成功删除,将抛异常。
import os
for root, dirs, files in os.walk(top, topdown=False):
for name in files:
os.remove(os.path.join(root, name))
for name in dirs:
os.rmdir(os.path.join(root, name))
另一种方法
import shutil
shutil.rmtree()
来源:https://blog.csdn.net/qq_38328875/article/details/79555108
标签:python,关键字,删除,文件夹
![](/images/zang.png)
![](/images/jiucuo.png)
猜你喜欢
keras输出预测值和真实值方式
2021-11-26 20:25:18
![](https://img.aspxhome.com/file/2023/9/83689_0s.jpg)
分享3个非常实用的 Python 模块
2023-08-07 18:21:33
python检索特定内容的文本文件实例
2022-12-29 12:05:42
flask上传作品之dbm操作的实现
2022-06-29 15:25:41
![](https://img.aspxhome.com/file/2023/1/94071_0s.png)
Golang数据类型比较详解
2023-07-17 10:11:21
![](https://img.aspxhome.com/file/2023/5/93665_0s.jpg)
如何得到数据库中所有表名 表字段及字段中文描述
2012-01-05 18:56:44
详解Python中使用base64模块来处理base64编码的方法
2022-01-12 01:27:19
Python简单实现自动删除目录下空文件夹的方法
2021-07-28 20:28:39
浅谈Python xlwings 读取Excel文件的正确姿势
2021-10-15 23:33:36
![](https://img.aspxhome.com/file/2023/3/112553_0s.png)
浅谈numpy.where() 的用法和np.argsort()的用法说明
2022-03-12 01:52:23
![](https://img.aspxhome.com/file/2023/7/99077_0s.png)
python使用pandas处理excel文件转为csv文件的方法示例
2021-09-13 07:15:52
解决Django migrate No changes detected 不能创建表的问题
2021-03-08 12:21:34
Python线程下使用锁的技巧分享
2023-10-03 06:05:42
详解Python3中setuptools、Pip安装教程
2023-12-30 11:49:40
ASP把数字用逗号每3位隔开显示代码
2008-01-02 13:11:00
![](https://img.aspxhome.com/file/UploadPic/20081/2/200812132551808s.gif)
一文理解Python命名机制
2021-11-22 08:04:04
python爬虫urllib中的异常模块处理
2022-12-06 10:42:33
![](https://img.aspxhome.com/file/2023/9/87699_0s.png)
python 日志模块 日志等级设置失效的解决方案
2022-01-25 07:27:19
AJAX实例:根据邮编自动完成地址信息
2008-03-06 19:44:00
Django学习笔记之Class-Based-View
2023-09-07 15:37:25