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操作xml文件示例
Apr 07 Python
django自定义Field实现一个字段存储以逗号分隔的字符串
Apr 27 Python
Python的Tornado框架实现图片上传及图片大小修改功能
Jun 30 Python
python bottle框架支持jquery ajax的RESTful风格的PUT和DELETE方法
May 24 Python
python编写Logistic逻辑回归
Dec 30 Python
Python 创建空的list,以及append用法讲解
May 04 Python
Windows系统下PhantomJS的安装和基本用法
Oct 21 Python
CentOS 7下安装Python3.6 及遇到的问题小结
Nov 08 Python
解决Jupyter Notebook开始菜单栏Anaconda下消失的问题
Apr 13 Python
Python接口测试文件上传实例解析
May 22 Python
selenium框架中driver.close()和driver.quit()关闭浏览器
Dec 08 Python
如何使用Python进行PDF图片识别OCR
Jan 22 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&&mysql)一
2006/10/09 PHP
PHP与SQL注入攻击防范小技巧
2011/09/16 PHP
php 根据自增id创建唯一编号类
2017/04/06 PHP
javascript静态的url如何传递
2007/05/03 Javascript
用JS剩余字数计算的代码
2008/07/03 Javascript
用showModalDialog弹出页面后,提交表单总是弹出一个新窗口
2009/07/18 Javascript
JavaScript Event学习第八章 事件的顺序
2010/02/07 Javascript
iframe自适应宽度、高度 ie6 7 8,firefox 3.86下测试通过
2010/07/29 Javascript
使用js 设置url参数
2013/07/08 Javascript
JS实现点击按钮获取页面高度的方法
2015/11/02 Javascript
webpack搭建vue 项目的步骤
2017/12/27 Javascript
解决element ui select下拉框不回显数据问题的解决
2019/02/20 Javascript
vue指令之表单控件绑定v-model v-model与v-bind结合使用
2019/04/17 Javascript
vue通过数据过滤实现表格合并
2020/11/30 Javascript
no-vnc和node.js实现web远程桌面的完整步骤
2019/08/11 Javascript
Ant Design Pro 下实现文件下载的实现代码
2019/12/03 Javascript
JavaScript代码压缩工具UglifyJS和Google Closure Compiler的基本用法
2020/04/13 Javascript
jQuery实现开关灯效果
2020/08/02 jQuery
使用FastCGI部署Python的Django应用的教程
2015/07/22 Python
python黑魔法之参数传递
2016/02/12 Python
Python模拟脉冲星伪信号频率实例代码
2018/01/03 Python
Python实现计算圆周率π的值到任意位的方法示例
2018/05/08 Python
python Tkinter版学生管理系统
2019/02/20 Python
python在linux环境下安装skimage的示例代码
2020/10/14 Python
通用的Django注册功能模块实现方法
2021/02/05 Python
css3中仿放大镜效果的几种方式原理解析
2020/12/03 HTML / CSS
webapp字号大小跟随系统字号大小缩放的示例代码
2018/12/26 HTML / CSS
有关HTML5 Video对象的ontimeupdate事件(Chrome上无效)的问题
2013/07/19 HTML / CSS
加拿大领先的牛仔零售商:Bluenotes
2018/01/22 全球购物
某IT外企面试题-二分法求方程!看看大家的C++功底
2015/07/04 面试题
爱心捐款倡议书
2014/04/14 职场文书
奥林匹克运动会口号
2014/06/19 职场文书
师德师风剖析材料
2014/09/30 职场文书
音乐教师个人工作总结
2015/02/06 职场文书
小学体育教学随笔
2015/08/14 职场文书
golang判断key是否在map中的代码
2021/04/24 Golang