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中使用动态变量名的方法
May 06 Python
将Django使用的数据库从MySQL迁移到PostgreSQL的教程
Apr 11 Python
Python之Scrapy爬虫框架安装及简单使用详解
Dec 22 Python
Django 使用logging打印日志的实例
Apr 28 Python
对python实现模板生成脚本的方法详解
Jan 30 Python
Python函数参数匹配模型通用规则keyword-only参数详解
Jun 10 Python
python爬虫添加请求头代码实例
Dec 28 Python
Python tkinter三种布局实例详解
Jan 06 Python
Python object类中的特殊方法代码讲解
Mar 06 Python
Python 面向对象静态方法、类方法、属性方法知识点小结
Mar 09 Python
Python中的全局变量如何理解
Jun 04 Python
Python切片列表字符串如何实现切换
Aug 06 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
PHP安装攻略:常见问题解答(一)
2006/10/09 PHP
php仿ZOL分页类代码
2008/10/02 PHP
redis+php实现微博(三)微博列表功能详解
2019/09/23 PHP
php源码的使用方法讲解
2019/09/26 PHP
PHP中的异常处理机制深入讲解
2020/11/10 PHP
jquery trim() 功能源代码
2011/02/14 Javascript
通过Javascript将数据导出到外部Excel文档的函数代码
2012/06/15 Javascript
Extjs表单常见验证小结
2014/03/07 Javascript
JQuery以JSON方式提交数据到服务端示例代码
2014/05/05 Javascript
JS+JSP通过img标签调用实现静态页面访问次数统计的方法
2015/12/14 Javascript
基于原生js淡入淡出函数封装(兼容IE)
2016/10/20 Javascript
AngularJS extend用法详解及实例代码
2016/11/15 Javascript
图片上传之FileAPI与NodeJs
2017/01/24 NodeJs
微信小程序 地图map实例详解
2017/06/07 Javascript
JS实现移动端整屏滑动的实例代码
2017/11/10 Javascript
express+mockjs实现模拟后台数据发送功能
2018/01/07 Javascript
Jquery和CSS实现选择框重置按钮功能
2018/11/08 jQuery
nodejs二进制与Buffer的介绍与使用
2019/07/11 NodeJs
jquery插件开发模式实例详解
2019/07/20 jQuery
40行代码把Vue3的响应式集成进React做状态管理
2020/05/20 Javascript
Vue axios获取token临时令牌封装案例
2020/09/11 Javascript
[51:11]2014 DOTA2国际邀请赛中国区预选赛5.21 LGD-CDEC VS DT
2014/05/22 DOTA
python 自动提交和抓取网页
2009/07/13 Python
Python中extend和append的区别讲解
2019/01/24 Python
python如何获取当前文件夹下所有文件名详解
2019/01/25 Python
用python给自己做一款小说阅读器过程详解
2019/07/11 Python
Python 等分切分数据及规则命名的实例代码
2019/08/16 Python
python爬虫-模拟微博登录功能
2019/09/12 Python
使用pandas读取表格数据并进行单行数据拼接的详细教程
2021/03/03 Python
Bowflex美国官方网站:高级家庭健身器材
2017/12/22 全球购物
初中地理教学反思
2014/01/11 职场文书
环境科学专业教师求职信
2014/07/12 职场文书
员工生日活动方案
2014/08/24 职场文书
公司委托书范本5篇
2014/09/20 职场文书
农贸批发市场管理制度
2015/08/07 职场文书
详解python的内存分配机制
2021/05/10 Python