c语言编程笔录

首页 >   > 笔记大全

笔记大全

Python实现删除指定文件功能

更新时间:2023-11-07

1. 指定文件名删除

首先需要引入os模块,使用os模块的remove函数可以删除文件。


    import os
    
    # 指定文件路径和文件名
    file_path = "file_path/filename"
    
    # 删除文件
    os.remove(file_path)

以上代码中的os.remove函数用于删除文件,只需要传入文件路径和文件名即可删除该文件。

2. 批量删除指定后缀名文件

如果需要批量删除指定后缀名的文件,可以使用os模块的listdir函数获取指定目录下的文件,然后遍历所有文件,通过文件名后缀名进行判断,符合条件则删除该文件。


    import os
    
    # 指定目录
    dir_path = "dir_path/"
    
    # 指定后缀名
    suffix = ".txt"
    
    # 获取目录下所有文件
    files = os.listdir(dir_path)
    
    # 删除符合后缀名条件的文件
    for file in files:
        if file.endswith(suffix):
            os.remove(os.path.join(dir_path, file))

以上代码中的os.listdir函数用于获取指定目录下的所有文件,然后使用endswith函数判断文件名是否符合条件,符合则使用os.remove函数删除该文件。

3. 删除指定日期之前的文件

如果需要删除指定日期之前的文件,可以使用os模块的getctime函数获取文件的创建时间,然后与指定时间进行比较,符合条件则删除该文件。


    import os
    import datetime
    
    # 指定目录
    dir_path = "dir_path/"
    
    # 指定日期,格式为年月日
    time_str = "2022-01-01"
    time = datetime.datetime.strptime(time_str, "%Y-%m-%d")
    
    # 获取目录下所有文件
    files = os.listdir(dir_path)
    
    # 删除符合条件的文件
    for file in files:
        file_path = os.path.join(dir_path, file)
        if os.path.isfile(file_path):
            file_time = datetime.datetime.fromtimestamp(os.path.getctime(file_path))
            if file_time < time:
                os.remove(file_path)

以上代码中的getctime函数用于获取文件的创建时间,然后使用datetime模块的strptime函数将指定日期转化为时间类型,使用fromtimestamp函数将文件创建时间转化为时间类型,最后比较时间大小,符合条件则使用os.remove函数删除该文件。

4. 删除指定大小的文件

如果需要删除指定大小的文件,可以使用os模块的getsize函数获取文件大小,然后与指定大小进行比较,符合条件则删除该文件。


    import os
    
    # 指定目录
    dir_path = "dir_path/"
    
    # 指定大小(单位为字节)
    size = 1024 * 1024  # 1MB
    
    # 获取目录下所有文件
    files = os.listdir(dir_path)
    
    # 删除符合条件的文件
    for file in files:
        file_path = os.path.join(dir_path, file)
        if os.path.isfile(file_path):
            file_size = os.path.getsize(file_path)
            if file_size < size:
                os.remove(file_path)

以上代码中的getsize函数用于获取文件大小,然后与指定大小进行比较,符合条件则使用os.remove函数删除该文件。