Python实现计算文件MD5和SHA1的方法示例


Posted in Python onJune 11, 2019

本文实例讲述了Python实现计算文件MD5和SHA1的方法。分享给大家供大家参考,具体如下:

不多说,直接源码:

#file md5
import sys;
import hashlib;
import os.path;
def GetFileMd5(strFile):
 file = None;
 bRet = False;
 strMd5 = "";
 strSha1 = "";
 try:
 file = open(strFile, "rb");
 md5 = hashlib.md5();
 sha1 = hashlib.sha1();
 strRead = "";
 while True:
  strRead = file.read(8096);
  if not strRead:
  break;
  else:
  md5.update(strRead);
  sha1.update(strRead);
 #read file finish
 bRet = True;
 strMd5 = md5.hexdigest();
 strSha1 = sha1.hexdigest();
 except:
 bRet = False;
 finally:
 if file:
  file.close()
 return [bRet, strMd5, strSha1];
def writFile(strInfo):
 file = None;
 file = open("E:\\1.txt", 'w+');
 file.write(strInfo);
 file.write("\n");
 if file:
 file.close();
if "__main__" == __name__:
  bOK , md5str1, sha1str1 = GetFileMd5("E:\\1.mp3");
  print(md5str1);
  md5All = md5str1 + "\t" + sha1str1;
  md5All += "\n";
  bOK , md5str2, sha1str2 = GetFileMd5("E:\\2.mp3");
  print(md5str2);
  writFile(md5str2 + "\t" +sha1str2);
  md5All += (md5str2 + "\t" + sha1str2);
  md5All += "\n";
  bOK , md5str3, sha1str3 = GetFileMd5("E:\\3.mp3");
  print(md5str3);
  writFile(md5str3 + "\t" +sha1str3);
  md5All += (md5str2 + "\t" + sha1str3);
  md5All += "\n";
  writFile(md5All);

产生的文件如下:

e712ca35354ff51803b51f3c7db03a81 8417609d07ce1bbd53111f1664ecfb63422749bb
34d7451ef9fbeb4c1ebbf2ed5cb96329 9d7009e1f1cd750f5a795d25491a5d294a45f3b2
34d7451ef9fbeb4c1ebbf2ed5cb96329 8a11f608aee135dd1d4b8c64af0721790e0a0b32

要是自己使用,改吧,改吧就可以使用了。

Python 相关文章推荐
用Python写的图片蜘蛛人代码
Aug 27 Python
从Python的源码来解析Python下的freeblock
May 11 Python
python爬取足球直播吧五大联赛积分榜
Jun 13 Python
windows下numpy下载与安装图文教程
Apr 02 Python
python3 中的字符串(单引号、双引号、三引号)以及字符串与数字的运算
Jul 18 Python
django的model操作汇整详解
Jul 26 Python
pip 安装库比较慢的解决方法(国内镜像)
Oct 06 Python
windows10环境下用anaconda和VScode配置的图文教程
Mar 30 Python
使用jupyter Nodebook查看函数或方法的参数以及使用情况
Apr 14 Python
Django使用rest_framework写出API
May 21 Python
Python代码需要缩进吗
Jul 01 Python
python实现学生通讯录管理系统
Feb 25 Python
python 求1-100之间的奇数或者偶数之和的实例
Jun 11 #Python
python flask框架实现传数据到js的方法分析
Jun 11 #Python
python 求一个列表中所有元素的乘积实例
Jun 11 #Python
python ChainMap的使用和说明详解
Jun 11 #Python
python 计算一个字符串中所有数字的和实例
Jun 11 #Python
python 实现返回一个列表中出现次数最多的元素方法
Jun 11 #Python
python ChainMap 合并字典的实现步骤
Jun 11 #Python
You might like
全国FM电台频率大全 - 17 湖北省
2020/03/11 无线电
php使用标签替换的方式生成静态页面
2015/05/21 PHP
thinkphp5 + ajax 使用formdata提交数据(包括文件上传) 后台返回json完整实例
2020/03/02 PHP
在网页中控制wmplayer播放器
2006/07/01 Javascript
基于jquery+thickbox仿校内登录注册框
2010/06/07 Javascript
初识JQuery 实例一(first)
2011/03/16 Javascript
JS实现固定在右下角可展开收缩DIV层的方法
2015/02/13 Javascript
JavaScript使用Math.Min返回两个数中较小数的方法
2015/04/06 Javascript
jQuery实现的选择商品飞入文本框动画效果完整实例
2016/08/10 Javascript
js自调用匿名函数的三种写法(推荐)
2016/08/19 Javascript
关于jQuery中fade(),show()起始位置的一点小发现
2017/04/25 jQuery
vue轮播图插件vue-concise-slider的使用
2018/03/13 Javascript
Node.js中你不可不精的Stream(流)
2018/06/08 Javascript
微信小程序 冒泡事件原理解析
2019/09/27 Javascript
JS常见错误(Error)及处理方案详解
2020/07/02 Javascript
Vue使用轮询定时发送请求代码
2020/08/10 Javascript
基于JQuery和DWR实现异步数据传递
2020/10/16 jQuery
python支持断点续传的多线程下载示例
2014/01/16 Python
python中使用mysql数据库详细介绍
2015/03/27 Python
用matplotlib画等高线图详解
2017/12/14 Python
聊聊python里如何用Borg pattern实现的单例模式
2019/06/06 Python
python 实现二维列表转置
2019/12/02 Python
python保留小数位的三种实现方法
2020/01/07 Python
Keras自动下载的数据集/模型存放位置介绍
2020/06/19 Python
Python基于字典实现switch case函数调用
2020/07/22 Python
python 绘制正态曲线的示例
2020/09/24 Python
俄罗斯隐形眼镜和眼镜在线商店:Cronos
2020/06/02 全球购物
Silk Therapeutics官网:清洁、抗衰老护肤品
2020/08/12 全球购物
英国健身专家:WIT Fitness
2021/02/09 全球购物
司法局火灾防控方案
2014/06/05 职场文书
2015年幼儿园保育员工作总结
2015/04/23 职场文书
2015年体检中心工作总结
2015/05/27 职场文书
学雷锋主题班会教案
2015/08/13 职场文书
Vue.js中v-bind指令的用法介绍
2022/03/13 Vue.js
Matplotlib绘制条形图的方法你知道吗
2022/03/21 Python
什么是SOLID
2022/03/24 Javascript