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使用htmllib分析网页内容的方法
May 08 Python
python实现支持目录FTP上传下载文件的方法
Jun 03 Python
Python实现文件信息进行合并实例代码
Jan 17 Python
PyQt5每天必学之弹出消息框
Apr 19 Python
python pyheatmap包绘制热力图
Nov 09 Python
使用pandas把某一列的字符值转换为数字的实例
Jan 29 Python
python获取Linux发行版名称
Aug 30 Python
python日志模块logbook使用方法
Sep 19 Python
Django 实现Admin自动填充当前用户的示例代码
Nov 18 Python
python 控制台单行刷新,多行刷新实例
Feb 19 Python
python初步实现word2vec操作
Jun 09 Python
详解pandas中利用DataFrame对象的.loc[]、.iloc[]方法抽取数据
Dec 13 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新手NOTICE错误常见解决方法
2011/12/07 PHP
PHP框架Swoole定时器Timer特性分析
2014/08/19 PHP
php按单词截取字符串的方法
2015/04/07 PHP
基于ThinkPHP+uploadify+upload+PHPExcel 无刷新导入数据
2015/09/23 PHP
利用PHP如何实现Socket服务器
2015/09/23 PHP
Yii2实现log输出到file及database的方法
2016/11/12 PHP
Mootools 1.2教程 函数
2009/09/15 Javascript
nodeType属性返回被选节点的节点类型介绍
2013/11/22 Javascript
AngularJS模块学习之Anchor Scroll
2016/01/19 Javascript
jquery拖动层效果插件用法实例分析(附demo源码)
2016/04/28 Javascript
在web中js实现类似excel的表格控件
2016/09/01 Javascript
超全面的javascript中变量命名规则
2017/02/09 Javascript
nodejs入门教程一:概念与用法简介
2017/04/24 NodeJs
js截取字符串功能的实现方法
2017/09/27 Javascript
用ES6的class模仿Vue写一个双向绑定的示例代码
2018/04/20 Javascript
jquery无缝图片轮播组件封装
2020/11/25 jQuery
如何从零开始手写Koa2框架
2019/03/22 Javascript
原生JS实现顶部导航栏显示按钮+搜索框功能
2019/12/25 Javascript
JS实现滑动插件
2020/01/15 Javascript
Vue中nprogress页面加载进度条的方法实现
2020/11/13 Javascript
[03:41]DOTA2上海特锦赛小组赛第三日recap精彩回顾
2016/02/28 DOTA
[03:00]2018完美盛典_最佳英雄奖
2018/12/17 DOTA
python的mysqldb安装步骤详解
2017/08/14 Python
启动targetcli时遇到错误解决办法
2017/10/26 Python
matplotlib在python上绘制3D散点图实例详解
2017/12/09 Python
python版DDOS攻击脚本
2019/06/12 Python
python tornado修改log输出方式
2019/11/18 Python
python 实现弹球游戏的示例代码
2020/11/17 Python
18-35岁旅游团的全球领导者:Contiki
2017/02/08 全球购物
保加利亚运动鞋购物网站:SneakerStudio.bg
2020/12/23 全球购物
介绍一下Linux中的链接
2016/05/28 面试题
爱心捐款倡议书范文
2014/05/12 职场文书
校园演讲稿汇总
2014/05/21 职场文书
2014年司法所工作总结
2014/11/22 职场文书
2014年图书管理员工作总结
2014/12/01 职场文书
党风廉政教育心得体会2016
2016/01/22 职场文书