python寻找含有关键字文件和删除文件夹方式

 更新时间:2022年02月09日 14:44:34   作者:solitary_w  
这篇文章主要介绍了python寻找含有关键字文件和删除文件夹方式,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

寻找含有关键字文件和删除文件夹

我们往往在操作文件时,会不知道文件具体的路径。

一般如果只是处理一个文件的话我们可以在文件所在的文件夹下运行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()

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • python贪婪匹配以及多行匹配的实例讲解

    python贪婪匹配以及多行匹配的实例讲解

    下面小编就为大家分享一篇python贪婪匹配以及多行匹配的实例讲解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2018-04-04
  • 这可能是最好玩的python GUI入门实例(推荐)

    这可能是最好玩的python GUI入门实例(推荐)

    这篇文章主要介绍了这可能是最好玩的python GUI入门实例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-07-07
  • Python+OpenCV自制AI视觉版贪吃蛇游戏

    Python+OpenCV自制AI视觉版贪吃蛇游戏

    这篇文章为大家详细介绍了如何使用mediapipe+opencv自制AI视觉版的贪吃蛇小游戏,文中的示例代码讲解详细,感兴趣的小伙伴可以学习一下
    2022-03-03
  • pytorch加载语音类自定义数据集的方法教程

    pytorch加载语音类自定义数据集的方法教程

    这篇文章主要给大家介绍了关于pytorch加载语音类自定义数据集的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-11-11
  • 只需要100行Python代码就可以实现的贪吃蛇小游戏

    只需要100行Python代码就可以实现的贪吃蛇小游戏

    贪吃蛇小游戏相信80、90后小时候肯定都玩过,那么你知道如果通过Python来实现吗?今天就来教大家,文中有非常详细的代码示例,对正在学习python的小伙伴们很有帮助,需要的朋友可以参考下
    2021-05-05
  • 浅谈python中的错误与异常

    浅谈python中的错误与异常

    写Python代码的小伙伴不可避免地会遇到代码执行错误和异常,这次就来详细的总结一下python中的错误和异常
    2021-06-06
  • tensorflow 模型权重导出实例

    tensorflow 模型权重导出实例

    今天小编就为大家分享一篇tensorflow 模型权重导出实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2020-01-01
  • Python 获取命令行参数内容及参数个数的实例

    Python 获取命令行参数内容及参数个数的实例

    今天小编就为大家分享一篇Python 获取命令行参数内容及参数个数的实例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2019-12-12
  • python机器学习理论与实战(二)决策树

    python机器学习理论与实战(二)决策树

    这篇文章主要介绍了python机器学习理论与实战第二篇,决策树的相关资料,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2018-01-01
  • 手把手教你用python绘制热度图(heatmap)

    手把手教你用python绘制热度图(heatmap)

    我们在做诸如人群密集度等可视化的时候,可能会考虑使用热力图,在Python中能很方便地绘制热力图,下面这篇文章主要给大家介绍了关于用python绘制热度图(heatmap)的相关资料,需要的朋友可以参考下
    2022-12-12

最新评论