python怎么实现MD5进行文件去重
发表于:2026-10-31 作者:千家信息网编辑
千家信息网最后更新 2026年10月31日,这篇文章主要介绍"python怎么实现MD5进行文件去重",在日常操作中,相信很多人在python怎么实现MD5进行文件去重问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答
千家信息网最后更新 2026年10月31日python怎么实现MD5进行文件去重
这篇文章主要介绍"python怎么实现MD5进行文件去重",在日常操作中,相信很多人在python怎么实现MD5进行文件去重问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答"python怎么实现MD5进行文件去重"的疑惑有所帮助!接下来,请跟着小编一起来学习吧!
工作原理
脚本会检查你给出的文件路径下的所有文件,然后计算每个文件的MD5值,并将其加入到一个列表中。
如果某文件的MD5值不在列表中,就认定其是我们需要的文件,脚本会在桌面新建一个名为"去重结果"的文件夹,并将其复制到里面去。
如果某文件的MD5值在列表中,就认定其不是我们需要的文件,不对其做任何处理。
代码可以直接运行,无需做任何修改(除了安装可能缺少的库文件)
代码
import osimport shutilimport hashlib# 对文件去重# 计算每个文件的md5值,据此进行去重def only_one(test_path): md5_list = [] count = 0 for current_folder, list_folders, files in os.walk(test_path): for file in files: file_path = current_folder + '\\' + file # 获取每个文件的路径 f = open(file_path, 'rb') # 开始计算每个文件的md5值 md5obj = hashlib.md5() md5obj.update(f.read()) get_hash = md5obj.hexdigest() f.close() md5_value = str(get_hash).upper() # 开始去重 if md5_value in md5_list: # 如果这个文件的md5值曾经出现过,就不对它做任何处理 count += 1 print('\033[31m[-] 发现重复文件:\033[0m' + str(file)) else: md5_list.append(md5_value) # 如果这个文件的md5值不存在列表中,就添加进列表中 shutil.copy(file_path, path2) print('\033[31m[-] 共发现重复文件:{}个\033[0m'.format(count))if __name__ == '__main__': print('\033[4;33m[+] 此脚本会检查指定路径下的所有文件,通过计算文件的MD5值进行去重\033[0m') print('\033[4;33m[+] 去重后的文件会复制到桌面新文件夹中,源文件不会丢失\033[0m') path = input('\033[34m[+] 请输入文件夹地址:\033[0m') os.chdir(path) # path2 用来存放所有的去重结果 desktop_path = os.path.join(os.path.expanduser("~"), 'Desktop') # 获取桌面路径 path2 = os.path.join(desktop_path, '去重结果') os.makedirs(path2) only_one(path) print('\033[32m[-] 现有非重复文件共计:{}个\033[0m'.format(len(os.listdir(path2))))
到此,关于"python怎么实现MD5进行文件去重"的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注网站,小编会继续努力为大家带来更多实用的文章!
文件
路径
学习
文件夹
桌面
结果
脚本
不对
代码
更多
并将
帮助
检查
实用
接下来
原理
地址
库文件
据此
文章
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
南京欣网互联网络科技
互联网科技公司简介
云之行互联网科技
互联网是不是新科技
互联网科技卖菜
互联网科技公司发展
奇酷互联网科技
融势互联网科技
掌上梦互联网科技
互联网科技公司的市场部门
深圳国际航运科技和互联网
互联网为啥属于高科技
青海科技产业互联网发展
民营互联网公司国防科技
互联网科技和法律行业
高科技互联网发展前景如何
上海钢联属于互联网科技股吗
国产互联网科技公司
北京天晋互联网科技有限公司
保山浩联互联网科技有限公司
厦门中拓互联网络科技有限公司
互联网巨头反垄断金融科技
互联网扶贫科技
互联网科技大赛获奖感言
互联网科技年终奖
昆明中奇联合互联网科技
中国互联网公司的科技投入
深圳互联网科技园地址
中国主要互联网科技公司
科技发展第三阶段互联网时代