关于python:python十行代码实现文件去重去除重复文件的脚本

导入依赖

'''导入依赖'''

from pathlib import Path

import filecmp

函数阐明

'''
filecmp.cmp(path1, path2, shallow=True)

path1/path2:待比拟的两个文件门路。

shallow :默认为True,即只比拟os.stat()获取的元数据(创立工夫,大小等信息)是否雷同,
设置为False的话,在比照文件的时候还要比拟文件内容。
'''

提取待去重文件门路

# 初始化文件门路列表

path_files_list = []

# 遍历

for path in Path(r'/usr/load/data').iterdir():

    # 校验是否为文件

    if path.is_file():

        # 退出到待去重文件列表

        path_files_list.append(path)

# 遍历待去重文件

for file_index in range(len(path_files_list) - 1):

    # 遍历,两辆比对

    for later in range(file_index + 1, len(path_files_list)):

        # 校验内容是否雷同

        if filecmp.cmp(path_files_list[file_index], 
path_files_list[later], shallow=False):

            # 内容雷同、则删除

            path_files_list[file_index].unlink()

            break

【粉丝福利】关注公众号,获取全套视频材料,喜爱小编点个 ‘关注’ 吧!

【往期精选】

● python的GUI框架tkinter,实现程序员的流氓式表白逻辑

● 探索python函数的不定长参数args与*kwargs

● 没有沉思过的python冷常识你晓得几个?

● python图片解决,主动生成gif动静图片

● python-redis 的操作手法,相当简略的redis数据存储形式!

● python 日期、工夫解决,各种日期工夫格局/字符串之间的互相转换到底是怎么的?

● python 内置的数据计数器Counter相当nice

● 几十行代码实现python发送邮件与接管邮件

● 梳理python路线常识盲区,最全面、最具体的python常识体系框架思维导图终于出炉了!

● 没有开发工具,在服务器控制台如何进行python代码调试,高级编程pdb代码调试!

● python中的set汇合,元素的CRUD解决,交加/差集/并集计算,不只是能去重!

● python编程:yaml文件利用反对,轻松读取可配置参数!

● VsCode再出神器-Pylance,终于为python开发者也带来福利了!

● 灵魂提问:每个程序员心中都有本人的一套编码标准,你的代码他人能看懂吗?

本文由微信公众号【python 集中营】公布,更多精彩文章、视频材料即可支付!

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

这个站点使用 Akismet 来减少垃圾评论。了解你的评论数据如何被处理