删除指定文件夹重复的文件

本文涉及的产品
实时数仓Hologres,5000CU*H 100GB 3个月
实时计算 Flink 版,1000CU*H 3个月
智能开放搜索 OpenSearch行业算法版,1GB 20LCU 1个月
简介: 这是一个Python脚本,用于删除指定文件夹(包括子目录)中的重复图片文件,基于文件的MD5值。程序依赖`NStudyPy`库,可通过`pip install -U NStudyPy`安装。核心函数`delete_repeat_file`接收路径和是否递归参数,调用未展示的`get_repeat_file`函数获取重复文件并删除。

删除指定文件夹重复的文件

背景和环境说明

本程序使用 python 3.10+
机器学习,样本处理过程中会有重复的数据。这里的样本是图片,本程序根据文件MD5 删除重复文件。

依赖包下载

pip install -U NStudyPy

使用

from NStudyPy import PyFile

if __name__ == '__main__':
    PyFile.delete_repeat_file(r'F:\temp\cards', is_recursive=True)

is_recursive 参数来限定是否递归子目录

核心源码

def delete_repeat_file(path: str, is_recursive=True) -> None:
    """
    删除重复文件
    :param path: 路径
    :param is_recursive:  是否递归
    :return: None
    """
    for f in get_repeat_file(path, is_recursive).values():
        for i in f[1:]:
            os.remove(i)

get_repeat_file 获取重复文件 , 参加下篇随笔来介绍。

目录
相关文章
|
Go Python
安装程序报2503/2502问题的解决
安装程序报2503/2502问题的解决
513 0
安装程序报2503/2502问题的解决
|
10月前
|
监控 Python
查找指定目录下最近修改的文件
本文介绍了一个使用Python编写的脚本,用于查找指定目录及其子目录中在过去指定秒数内被修改的文件。通过`os`和`time`模块,脚本遍历目录,检查文件的最后修改时间,并列出符合条件的文件。文章还提供了代码优化建议,包括增加日志记录、异常处理和性能优化,使脚本更加健壮和高效。
120 4
|
存储 人工智能 大数据
AI驱动下的云存储创新
随着大数据时代的到来,云存储作为数据存储和管理的核心基础设施,其重要性日益凸显。同时, AI 快速发展也为云存储的进化与创新提供了强大的驱动力。本话题将解读AI 驱动下云存储的进化趋势,分享阿里云存储的创新技术,助力企业实现数字化升级。
690 0
|
负载均衡 安全 Linux
在Linux中,什么是负载均衡,并且如何在Linux中实现它。
在Linux中,什么是负载均衡,并且如何在Linux中实现它。
|
开发工具 Android开发 图形学
【2015~2024】大牛直播SDK演化史
大牛直播SDK始创于2015年,旨在提供低延迟的RTMP推拉流解决方案,特别适用于毫秒级延迟的应用场景。初始版本针对Android平台实现RTMP直播推送,随后扩展至Windows、iOS和Linux平台,支持RTMP与RTSP播放器,延迟稳定在一秒以内。SDK涵盖实时推流、播放、GB28181设备接入、录像、多路流媒体转发、轻量级RTSP服务等多种功能,并支持H.265编码格式。该SDK适用于在线教育、智慧安防等多个行业场景,并已发展成为GitHub上获得超过10000星标的强大跨平台流媒体内核直播SDK。
599 1
|
机器学习/深度学习 数据可视化 数据挖掘
职场新技能:Python数据分析,你掌握了吗?
职场新技能:Python数据分析,你掌握了吗?
230 0
|
存储 机器学习/深度学习 自然语言处理
Transformer 自然语言处理(四)
Transformer 自然语言处理(四)
537 0
Transformer 自然语言处理(四)
|
网络协议 搜索推荐
阿里云DNS常见问题之阿里云DNS企业邮箱收不到国外的邮件如何解决
阿里云DNS(Domain Name System)服务是一个高可用和可扩展的云端DNS服务,用于将域名转换为IP地址,从而让用户能够通过域名访问云端资源。以下是一些关于阿里云DNS服务的常见问题合集:
|
机器学习/深度学习 人工智能 算法
神经网络算法——损失函数(Loss Function)
神经网络算法——损失函数(Loss Function)
1762 0
|
缓存 前端开发 Java
解锁Freemarker的神秘面纱:深入了解模板引擎的奇妙世界
解锁Freemarker的神秘面纱:深入了解模板引擎的奇妙世界
200 0