Python实现的删除重复文件或图片功能示例【去重】
作者:loveliuzz 发布时间:2023-12-25 00:49:07
标签: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程序设计有所帮助。
来源:https://blog.csdn.net/loveliuzz/article/details/81661281


猜你喜欢
- PHP chunk_split() 函数实例在每个字符后分割一次字符串,并在每个分割后添加 ".":<?php $
- 在给客户做个程序时,突然遇到个问题,就是产品页用户提交视频播放文件时,如何根据提交的网址内的视频格式进行正确的播放呢....郁闷了一会,想好
- 一、安装包MYSQL服务下载地址:MySQL官网下载,这里会显示当前最新的版本,MYSQL刚从5.7版本升到8.0正式版,据说速度提升了2倍
- 在将string类型的数据类型转换为spark rdd时,一直报这个错,StructType can not accept object %
- 本文实例讲述了python使用多线程不断刷新网页的方法。分享给大家供大家参考。具体如下:这段代码可以开通过个线程不断刷新指定的页面,可用于刷
- template中的_parse方法是模板文法的解析器,而这个文件中一坨一坨的各种node以及block,就是解析结果的承载者,也就是说在经
- 最近很少写CSS了,以后也可能写的会很少了,所以还是想把自已的一些经验能和大家分享一下,希望能给大家一些帮助!这篇文章主要写的提高网页在客户
- watch监听不到对象内部的变化有的时候vue会出现这种现象,无法监听到复杂对象内部的变化:当对象里面原本有某一个属性,并对这个属性操作时,
- 本文实例讲述了Python Django框架单元测试之文件上传测试。分享给大家供大家参考,具体如下:Submitting files is
- composer更新依赖包compoesr 的 require/update 都可以更新指定的依赖包 (升级 / 降级)。require 更
- urllib是python的一个获取url(Uniform Resource Locators,统一资源定址符)了,可以利用它来抓取远程的数
- 接口在 Go 语言中,接口是一种抽象的类型,是一组方法的集合。接口存在的目的是定义规范,而规范的细节由其他对象去实现。我们来看一个例子:im
- MySQL 处理重复数据有些 MySQL 数据表中可能存在重复的记录,有些情况我们允许重复数据的存在,但有时候我们也需要删除这些重复的数据。
- 本文实例讲述了js比较日期大小的方法。分享给大家供大家参考。具体如下:function DateDiff(d1,d2){ var resul
- 本文实例讲述了Python捕捉和模拟鼠标事件的方法。分享给大家供大家参考。具体分析如下:这个假期玩了不少galgame,不过有些很老的游戏没
- 需要注意的是:更改完源程序.c文件,需要对整个项目重新编译、make install,对已经生成的文件进行更新,类似于之前VS中在一个类中增
- 本文实例讲述了Python计算三维矢量幅度的方法。分享给大家供大家参考。具体如下:from numpy import *from math
- 本文对于先前系列文章中实现的C/Python代码统计工具(CPLineCounter),通过C扩展接口重写核心算法加以优化,并与网上常见的统
- 可以把本功能写成一个函数,函数的处理过程描述如下:首先调用adodb.connection对象中的openSchema函数,这样会得到一个R
- 自动化测试执行的用例有很多,python额测试用例文件,都是以“test”开头的。TestLoader(defaultTestLoader)