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

打印 上一主题 下一主题

主题 902|帖子 902|积分 2706

1.导入依赖
  1. '''导入依赖'''
  2. from pathlib import Path
  3. import filecmp
复制代码
2.函数说明
  1. filecmp.cmp(path1, path2, shallow=True)
复制代码
path1/path2:待比较的两个文件路径。
shallow :默认为True,即只比较os.stat()获取的元数据(创建时间,大小等信息)是否相同,
设置为False的话,在对比文件的时候还要比较文件内容。
3.提取待去重文件路径
  1. # 初始化文件路径列表
  2. path_files_list = []
  3. # 遍历
  4. for path in Path(r'/usr/load/data').iterdir():
  5.     # 校验是否为文件
  6.     if path.is_file():
  7.         # 加入到待去重文件列表
  8.         path_files_list.append(path)
  9. #学习中遇到问题没人解答?小编创建了一个Python学习交流群:711312441
  10. # 遍历待去重文件
  11. for file_index in range(len(path_files_list) - 1):
  12.     # 遍历,两辆比对
  13.     for later in range(file_index + 1, len(path_files_list)):
  14.         # 校验内容是否相同
  15.         if filecmp.cmp(path_files_list[file_index],
  16. path_files_list[later], shallow=False):
  17.             # 内容相同、则删除
  18.             path_files_list[file_index].unlink()
  19.             break
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

河曲智叟

金牌会员
这个人很懒什么都没写!

标签云

快速回复 返回顶部 返回列表