# 该.py文件与待修改文件置于同一文件夹下,操作运行即可实现功能。注意观察操作台反馈。
import os
import random
import sys
import hashlib# 获取当前"文件"的绝对路径
path1 = __file__
# 获取当前"文件夹"的绝对路径
path = path1.replace('!!!_md5_change.py', '')
# 获取当前文件的文件名
# print(os.path.basename(__file__))def md5_change(file_name):file = open(file_name, 'a')file.write('###&&&')file.close()_FILE_SLIM = 100*1024*1024def md5_search(filepath):calltimes = 0hmd5 = hashlib.md5()fp = open(filepath, "rb")f_size = os.stat(filepath).st_sizeif f_size > _FILE_SLIM:while (f_size > _FILE_SLIM):hmd5.update(fp.read(_FILE_SLIM))f_size /= _FILE_SLIMcalltimes += 1if (f_size > 0) and (f_size <= _FILE_SLIM):hmd5.update(fp.read())else:hmd5.update(fp.read())return hmd5.hexdigest()# 获取文件夹下所有的文件名称,以列表的形式呈现
file_name_list = os.listdir(path)# 在列表元素个数范围内取随机数
random_x = random.randint(0, len(file_name_list))
# 获取到文件夹内某个随机文件的绝对路径(为结尾验证做准备)
file_name_path = path + file_name_list[random_x]# 获取该随机选取到的文件的md5值(md5值修改之前)
md5 = md5_search(file_name_path)
print('"' + file_name_list[random_x] + '"原md5:  ' + md5)# 开始遍历含有文件名的列表
for x in range(0, len(file_name_list)):filename = file_name_list[x]# 剔除目标文件之外的元素if filename == '!!!_md5_change.py':passelif filename == '.DS_Store':passelse:# 对文件进行md5修改md5_change(filename)# 获取该随机选取到的文件的md5值(md5值修改之后)
new_md5 = md5_search(file_name_path)
print('"' + file_name_list[random_x] + '"修改后的md5:  ' + new_md5)# 对随机挑选到的文件进行修改前后比对验证
if md5 != new_md5:print('md5值的修改验证通过!')
else:print('"' + file_name_list[random_x] + '"' + '验证未通过,该文件夹下所有文件的md5值可能均修改失败')

利用python实现批量修改文件的md5值相关推荐

  1. python数据库操作批量sql执行_利用Python如何批量修改数据库执行Sql文件

    利用Python如何批量修改数据库执行Sql文件 来源:中文源码网    浏览: 次    日期:2018年9月2日 [下载文档:  利用Python如何批量修改数据库执行Sql文件.txt ] (友 ...

  2. 利用python对批量修改文件名

    利用python对批量修改文件名 当你得到一些同类型的文件时,文件名是混乱的.为了方便观看,需要进行修改文件名.就例如:收作业,收取文件. 下面讲讲我对修改文件名的方法. 思路: 获取文件名 ===& ...

  3. Python OpenCV 批量修改文件夹内所有图片的尺寸

    Python OpenCV 批量修改文件夹内所有图片的尺寸 简述 插件 遍历所有文件(包括子文件) 缩放图片尺寸并保存图片 遍历并修改图片 简述 遍历文件夹下的所有子文件(包括自文件夹内的)的图片批量 ...

  4. MAC修改文件的MD5值

    最近遇到一个需求,需要修改文件的md5值否则会被认为是相同文件 本人用的mac系统,操作也很简单 先查看文件的md5值 修改文件的md5值 在查看文件的md5值 操作分别是 1). md5 (文件路径 ...

  5. mac下修改文件的md5值

    打开终端 改变文件的md5值命令: echo (随便写入几个字符,不带括号) >> /Users/carl/Downloads/要修改的文件 查看文件的md5值命令: md5 /Users ...

  6. 如何利用openSsl来计算一个文件的md5值?

    openssl环境的配置, 我就不再说了.在本文中, 我们来讨论一个文件的md5值, 废话少说, 直接给大家代码, 上点干货: [cpp] view plaincopy #include <io ...

  7. Python自动批量修改文件名称的方法大全

    前言 本文介绍基于Python语言,按照一定命名规则批量修改多个文件的文件名的方法.已知现有一个文件夹,其中包括班级所有同学上交的作业文件,每人一份:所有作业文件命名格式统一,都是地信1701_姓名_ ...

  8. 利用python编写批量修改文件名后缀

    在自己进行学习时发现一个小东西,批量修改文件名缀的小程序,代码不是自己原创的,忘记了是哪位博主的帖子了但还是要记录一下我觉得 import os # import self as self'''os. ...

  9. python:批量修改文件的访问时间、修改时间、改变时间!

    1.名词解释 访问时间:读取一次文件的内容,该时间便会更新.比如对这个文件使用less命令或者more命令.(ls.stat这样的命令不会修改文件访问时间) 修改时间:对文件内容修改一次便会更新该时间 ...

最新文章

  1. Asp.net实现在线截图(大图截取为小图)
  2. 分享几个vs code 的几个插件
  3. 程序员编程艺术第一章(第二节)
  4. KVM学习及应用的七个阶段
  5. 4、Power Map—实例:演示报告封面
  6. ImportError: No module named google.protobuf.internal
  7. kernel printk信息显示级别
  8. 抛弃扎克伯格!拦不住的 Facebook 离职潮
  9. go 正则表达式分组匹配_Python正则表达式的7个使用典范(推荐)
  10. 【BZOJ】3238: [Ahoi2013]差异
  11. DHCP原理及报文格式
  12. WampServer中MySQL中文乱码解决
  13. 加密保护软件 WinLicense常见问题整理大全(六)
  14. Windows Server 2016 (Updated Feb 2018) (x64)下载
  15. html5 logo背景透明度,使用纯洁的CSS实现HTML5的新logo
  16. 编程珠玑--粗略估算
  17. 在线JSON转TSV工具
  18. 日本口音英语发音规则
  19. 潇潇日暮时,掠水鸳鸯散。(01背包
  20. 《职业经理人常犯的11个错误》——余世维

热门文章

  1. 在线运行python的网站,在线python运行环境
  2. 全球唯一!航空业承诺2050年实现净零碳排放;20家消费品企业立志2030年将生产环境转变为“积极森林” | 美通社头条...
  3. 运放之求解输出失调电压
  4. 学校计算机房的面积是98平方米,98平米的房子公摊面积21算多吗
  5. c语言for什么意思,C语言中for用法是什么?
  6. OBS视频录制及其直播推流教程
  7. pamp 和 ldd 查看进程调用什么 lib 文件
  8. pytorch权重保存与加载
  9. Bugku-Misc-眼见非实
  10. python输入123输出321_编程从键盘输入一个三位数,将它们逆序输出。如输入123,输出321.谢谢...