Python實(shí)現(xiàn)的刪除重復(fù)文件或圖片功能示例【去重】
本文實(shí)例講述了Python實(shí)現(xiàn)的刪除重復(fù)文件或圖片功能。分享給大家供大家參考,具體如下:
通過(guò)python爬蟲(chóng)或其他方式保存的圖片文件通常包含一些重復(fù)的圖片或文件,
通過(guò)下面的python代碼可以將重復(fù)的文件刪除以達(dá)到去重的目的。其中,文件目錄結(jié)構(gòu)如下圖:

# /usr/bin/env python
# -*- coding:utf-8 -*-
# 運(yùn)行的代碼文件要放到刪除重復(fù)的文件或圖片所包含的目錄中
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, '個(gè)文件\n\n\n請(qǐng)稍等正在刪除重復(fù)文件...')
delfile()
print('\n\n去重后剩', filecount(), '個(gè)文件')
print('\n\n一共刪除了', oldf - filecount(), '個(gè)文件\n\n')
更多關(guān)于Python相關(guān)內(nèi)容感興趣的讀者可查看本站專(zhuān)題:《Python文件與目錄操作技巧匯總》、《Python文本文件操作技巧匯總》、《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》及《Python入門(mén)與進(jìn)階經(jīng)典教程》
希望本文所述對(duì)大家Python程序設(shè)計(jì)有所幫助。
相關(guān)文章
Python打包模塊wheel的使用方法與將python包發(fā)布到PyPI的方法詳解
這篇文章主要介紹了Python打包模塊wheel的使用方法與將python包發(fā)布到PyPI的方法詳解,需要的朋友可以參考下2020-02-02
Pandas之to_sql()插入數(shù)據(jù)到mysql中所遇到的問(wèn)題及解決
這篇文章主要介紹了Pandas之to_sql()插入數(shù)據(jù)到mysql中所遇到的問(wèn)題及解決方案,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-06-06
Python實(shí)現(xiàn)一個(gè)自助取數(shù)查詢(xún)工具
在數(shù)據(jù)生產(chǎn)應(yīng)用部門(mén),取數(shù)分析是一個(gè)很常見(jiàn)的需求,實(shí)際上業(yè)務(wù)人員需求時(shí)刻變化,最高效的方式是讓業(yè)務(wù)部門(mén)自己來(lái)取,減少不必要的重復(fù)勞動(dòng),本文介紹如何用Python實(shí)現(xiàn)一個(gè)自助取數(shù)查詢(xún)工具2021-06-06
Python 郵箱登錄驗(yàn)證碼功能實(shí)現(xiàn)代碼
本文介紹了結(jié)合前端校驗(yàn)和后端Redis緩存策略實(shí)現(xiàn)郵箱登錄的功能,旨在提高安全性和效率,前端校驗(yàn)郵箱格式,后端生成并發(fā)送驗(yàn)證碼,使用Redis緩存驗(yàn)證碼以提高效率和安全性,感興趣的朋友一起看看吧2024-12-12
Python抓包并解析json爬蟲(chóng)的完整實(shí)例代碼
這篇文章主要給大家介紹了關(guān)于Python抓包并解析json爬蟲(chóng)的相關(guān)資料,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-11-11
Python調(diào)用百度OCR實(shí)現(xiàn)圖片文字識(shí)別的示例代碼
這篇文章主要介紹了Python調(diào)用百度OCR實(shí)現(xiàn)圖片文字識(shí)別的示例代碼,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-07-07
Python利用cv2動(dòng)態(tài)繪制圓和矩形的示例詳解
這篇文章主要為大家詳細(xì)介紹了Python如何利用cv2實(shí)現(xiàn)動(dòng)態(tài)繪制圓和矩形的功能,文中的示例代碼講解詳細(xì),具有一定的參考價(jià)值,需要的可以參考一下2023-03-03

