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 实现归并排序算法
Jun 05 Python
Linux下使用python调用top命令获得CPU利用率
Mar 10 Python
Python监控主机是否存活并以邮件报警
Sep 22 Python
Flask解决跨域的问题示例代码
Feb 12 Python
Python Socket编程之多线程聊天室
Jul 28 Python
浅谈pandas用groupby后对层级索引levels的处理方法
Nov 06 Python
pandas分别写入excel的不同sheet方法
Dec 11 Python
使用Windows批处理和WMI设置Python的环境变量方法
Aug 14 Python
Python虚拟环境venv用法详解
May 25 Python
Python实现ElGamal加密算法的示例代码
Jun 19 Python
python实现简单遗传算法
Sep 18 Python
想学画画?python满足你!
Dec 24 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
人大复印资料处理程序_补充篇
2006/10/09 PHP
php二维数组排序详解
2013/11/06 PHP
php中动态调用函数的方法
2015/03/16 PHP
Yii隐藏URL中index.php的方法
2016/07/12 PHP
Thinkphp5行为使用方法汇总
2017/12/21 PHP
thinkPHP5.1框架路由::get、post请求简单用法示例
2019/05/06 PHP
JQuery 学习笔记 选择器之五
2009/07/23 Javascript
ExtJS GridPanel 根据条件改变字体颜色
2010/03/08 Javascript
jQuery实现动态表单验证时文本框抖动效果完整实例
2015/08/21 Javascript
BootStrap智能表单实战系列(九)表单图片上传的支持
2016/06/13 Javascript
jQuery异步提交表单的两种方式
2016/09/13 Javascript
javaScript生成支持中文带logo的二维码(jquery.qrcode.js)
2017/01/03 Javascript
微信小程序实现全国机场索引列表
2018/01/31 Javascript
vue 简单自动补全的输入框的示例
2018/03/12 Javascript
Vue自定义过滤器格式化数字三位加一逗号实现代码
2018/03/23 Javascript
重学JS 系列:聊聊继承(推荐)
2019/04/11 Javascript
node.js中process进程的概念和child_process子进程模块的使用方法示例
2020/02/11 Javascript
Openlayers显示地理位置坐标的方法
2020/09/28 Javascript
Python使用shelve模块实现简单数据存储的方法
2015/05/20 Python
浅谈Python 对象内存占用
2016/07/15 Python
Python空间数据处理之GDAL读写遥感图像
2019/08/01 Python
Linux下通过python获取本机ip方法示例
2019/09/06 Python
python保存log日志,实现用log日志画图
2019/12/24 Python
python argparse模块通过后台传递参数实例
2020/04/20 Python
Richards网上商店:当代时尚,遍布巴西
2019/11/03 全球购物
瑞士首家网上药店折扣店:McDrogerie
2020/12/22 全球购物
Shell编程面试题
2016/05/29 面试题
入党积极分子思想汇报
2014/01/02 职场文书
竞争上岗演讲稿
2014/01/05 职场文书
毕业证丢失证明
2014/01/15 职场文书
商场总经理岗位职责
2014/02/03 职场文书
中学生个人自我评价
2014/02/06 职场文书
建设办主任四风问题整改思路和措施
2014/09/20 职场文书
2014年结对帮扶工作总结
2014/12/17 职场文书
如何用PHP实现多线程编程
2021/05/26 PHP
Python内置数据结构列表与元组示例详解
2021/08/04 Python