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笔记(1) 关于我们应不应该继续学习python
Oct 24 Python
使用python获取CPU和内存信息的思路与实现(linux系统)
Jan 03 Python
Python 3.x 新特性及10大变化
Jun 12 Python
Python正规则表达式学习指南
Aug 02 Python
python3 shelve模块的详解
Jul 08 Python
python添加模块搜索路径和包的导入方法
Jan 19 Python
Python数据类型之Tuple元组实例详解
May 08 Python
python 整数越界问题详解
Jun 27 Python
django最快程序开发流程详解
Jul 19 Python
python with语句的原理与用法详解
Mar 30 Python
Keras实现支持masking的Flatten层代码
Jun 16 Python
如何用python写个模板引擎
Jan 14 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
php5 mysql分页实例代码
2008/04/10 PHP
php+ajax实现无刷新分页的方法
2014/11/04 PHP
PHP中获取文件创建日期、修改日期、访问时间的方法
2016/11/05 PHP
基于jQuery的ajax功能实现web service的json转化
2009/08/29 Javascript
jquery实现一个简单的表单验证实例
2016/03/30 Javascript
微信小程序 scroll-view隐藏滚动条详解
2017/01/16 Javascript
vue小图标favicon不显示的解决方案
2017/09/19 Javascript
解决vue打包css文件中背景图片的路径问题
2018/09/03 Javascript
JS实现数组去重,显示重复元素及个数的方法示例
2019/01/21 Javascript
jquery简单实现纵向的无缝滚动代码实例
2019/04/01 jQuery
jQuery实现高级检索功能
2019/05/28 jQuery
微信小程序如何播放腾讯视频的实现
2019/09/20 Javascript
javascript实现视频弹幕效果(两个版本)
2019/11/28 Javascript
JavaScript装饰者模式原理与用法实例详解
2020/03/09 Javascript
jQuery 添加元素和删除元素的方法
2020/07/15 jQuery
对python中矩阵相加函数sum()的使用详解
2019/01/28 Python
基于wxPython的GUI实现输入对话框(1)
2019/02/27 Python
使用PYTHON解析Wireshark的PCAP文件方法
2019/07/23 Python
python超时重新请求解决方案
2019/10/21 Python
python实现飞机大战小游戏
2019/11/08 Python
Pycharm中Python环境配置常见问题解析
2020/01/16 Python
python中time.ctime()实例用法
2021/02/03 Python
英国马莎百货印度官网:Marks & Spencer印度
2020/10/08 全球购物
北京泡泡网网络有限公司.net面试题
2012/07/17 面试题
西安夏日科技有限公司Java笔试题
2013/01/11 面试题
教师研修随笔感言
2014/01/23 职场文书
社团文化节策划书
2014/02/01 职场文书
2014年廉洁自律承诺书
2014/05/26 职场文书
群众路线剖析材料
2014/09/30 职场文书
学习十八大宣传标语
2014/10/09 职场文书
环境卫生工作汇报材料
2014/10/28 职场文书
环境建议书
2015/02/04 职场文书
后勤个人工作总结
2015/02/28 职场文书
保险公司反洗钱宣传活动总结
2015/05/08 职场文书
优胜劣汰,强者为王——读《鲁滨逊漂流记》有感
2019/08/15 职场文书
php中配置文件保存修改操作 如config.php文件的读取修改等操作
2021/05/12 PHP