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

发布时间 2024-01-13 16:32:53作者: Python探索牛

1.导入依赖

'''导入依赖'''

from pathlib import Path

import filecmp

2.函数说明

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

path1/path2:待比较的两个文件路径。

shallow :默认为True,即只比较os.stat()获取的元数据(创建时间,大小等信息)是否相同,
设置为False的话,在对比文件的时候还要比较文件内容。

3.提取待去重文件路径

# 初始化文件路径列表
path_files_list = []

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

    # 校验是否为文件
    if path.is_file():
        # 加入到待去重文件列表
        path_files_list.append(path)
#学习中遇到问题没人解答?小编创建了一个Python学习交流群:711312441
# 遍历待去重文件
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