Python实现的删除重复文件或图片功能示例【去重】


Posted in Python onApril 23, 2019

本文实例讲述了Python实现的删除重复文件或图片功能。分享给大家供大家参考,具体如下:

通过python爬虫或其他方式保存的图片文件通常包含一些重复的图片或文件,

通过下面的python代码可以将重复的文件删除以达到去重的目的。其中,文件目录结构如下图:

Python实现的删除重复文件或图片功能示例【去重】

# /usr/bin/env python
# -*- coding:utf-8 -*-
# 运行的代码文件要放到删除重复的文件或图片所包含的目录中
import os
import hashlib
def filecount():
  filecount = int(os.popen('dir /B |find /V /C ""').read())
  return (filecount)
def md5sum(filename):
  f = open(filename, 'rb')
  md5 = hashlib.md5()
  while True:
    fb = f.read(8096)
    if not fb:
      break
    md5.update(fb)
  f.close()
  return (md5.hexdigest())
def delfile():
  all_md5 = {}
  filedir = os.walk(os.getcwd())
  for i in filedir:
    for tlie in i[2]:
      if md5sum(tlie) in all_md5.values():
        os.remove(tlie)
      else:
        all_md5[tlie] = md5sum(tlie)
if __name__ == '__main__':
  oldf = filecount()
  print('去重前有', oldf, '个文件\n\n\n请稍等正在删除重复文件...')
  delfile()
  print('\n\n去重后剩', filecount(), '个文件')
  print('\n\n一共删除了', oldf - filecount(), '个文件\n\n')

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
python回调函数的使用方法
Jan 23 Python
Python中用于检查英文字母大写的isupper()方法
May 19 Python
利用python代码写的12306订票代码
Dec 20 Python
Python内置函数——__import__ 的使用方法
Nov 24 Python
Python基于datetime或time模块分别获取当前时间戳的方法实例
Feb 19 Python
python爬虫 urllib模块url编码处理详解
Aug 20 Python
python 默认参数相关知识详解
Sep 18 Python
python3 常见解密加密算法实例分析【base64、MD5等】
Dec 19 Python
python判断变量是否为int、字符串、列表、元组、字典的方法详解
Feb 13 Python
python的列表List求均值和中位数实例
Mar 03 Python
pytorch显存一直变大的解决方案
Apr 08 Python
浅谈Python类的单继承相关知识
May 12 Python
详解Python 函数如何重载?
Apr 23 #Python
解决Django生产环境无法加载静态文件问题的解决
Apr 23 #Python
Python 存储字符串时节省空间的方法
Apr 23 #Python
Django页面数据的缓存与使用的具体方法
Apr 23 #Python
Python切片操作去除字符串首尾的空格
Apr 22 #Python
详解python中的hashlib模块的使用
Apr 22 #Python
Python 中包/模块的 `import` 操作代码
Apr 22 #Python
You might like
PHP SPL使用方法和他的威力
2013/11/12 PHP
PHP使用token防止表单重复提交的方法
2016/04/07 PHP
PHP生成指定范围内的N个不重复的随机数
2019/03/18 PHP
thinkphp3.2框架中where条件查询用法总结
2019/08/13 PHP
JavaScript的目的分析
2007/01/05 Javascript
Javascript load Page,load css,load js实现代码
2010/03/31 Javascript
js过滤HTML标签完整实例
2015/11/26 Javascript
Bootstrap导航栏各元素操作方法(表单、按钮、文本)
2015/12/28 Javascript
jQuery插件制作的实例教程
2016/05/16 Javascript
jquery输入数字随机抽奖特效的简单实现代码
2016/06/10 Javascript
Javascript将数值转换为金额格式(分隔千分位和自动增加小数点)
2016/06/22 Javascript
node.js+jQuery实现用户登录注册AJAX交互
2017/04/28 jQuery
使用jQuery.Pin垂直滚动时固定导航
2017/05/24 jQuery
用js实现before和after伪类的样式修改的示例代码
2017/09/07 Javascript
JS实现碰撞检测的方法分析
2018/01/19 Javascript
js获取html页面代码中图片地址的实现代码
2018/03/05 Javascript
详解Vue基于vue-quill-editor富文本编辑器使用心得
2019/01/03 Javascript
零基础之Node.js搭建API服务器的详解
2019/03/08 Javascript
[01:23:45]DOTA2-DPC中国联赛 正赛 CDEC vs Dragon BO3 第一场 1月22日
2021/03/11 DOTA
Python3 入门教程 简单但比较不错
2009/11/29 Python
Python通过递归遍历出集合中所有元素的方法
2015/02/25 Python
Python优化技巧之利用ctypes提高执行速度
2016/09/11 Python
cmd运行python文件时对结果进行保存的方法
2018/05/16 Python
Python面向对象类继承和组合实例分析
2018/05/28 Python
python2和python3在处理字符串上的区别详解
2019/05/29 Python
如何通过命令行进入python
2020/07/06 Python
HTML5的Geolocation地理位置定位API使用教程
2016/05/12 HTML / CSS
GUESS西班牙官方网上商城:美国服饰品牌
2017/03/15 全球购物
Booking.com西班牙:全球酒店预订
2018/03/30 全球购物
学校门卫工作职责
2013/12/07 职场文书
服装电子商务创业计划书
2014/01/30 职场文书
银行爱岗敬业演讲稿
2014/05/05 职场文书
医院党的群众路线教育实践活动领导班子对照检查材料
2014/09/25 职场文书
Python Django 后台管理之后台模型属性详解
2021/04/25 Python
关于JS中的作用域中的问题思考分享
2022/04/06 Javascript
app场景下uniapp的扫码记录
2022/07/23 Java/Android