python 计算文件的md5值实例


Posted in Python onJanuary 13, 2017

较小文件处理方法:

import hashlib
import os

def get_md5_01(file_path):
  md5 = None
  if os.path.isfile(file_path):
    f = open(file_path,'rb')
    md5_obj = hashlib.md5()
    md5_obj.update(f.read())
    hash_code = md5_obj.hexdigest()
    f.close()
    md5 = str(hash_code).lower()
  return md5

if __name__ == "__main__":
  file_path = r'D:\test\test.jar'
  md5_01 = get_md5_01(file_path)
  print(md5_01)

较大文件处理方法:

import hashlib
import os

def get_md5_02(file_path):
  f = open(file_path,'rb')  
  md5_obj = hashlib.md5()
  while True:
    d = f.read(8096)
    if not d:
      break
    md5_obj.update(d)
  hash_code = md5_obj.hexdigest()
  f.close()
  md5 = str(hash_code).lower()
  return md5

if __name__ == "__main__":
  file_path = r'D:\test\test.jar'
  md5_02 = get_md5_02(file_path)
  print(md5_02)

说明:对于同一个文件,两种方法计算得到的md5是一致的。

注:以上代码在Python 3.x版本测试通过。

以上这篇python 计算文件的md5值实例就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python基础教程之实现石头剪刀布游戏示例
Feb 11 Python
python测试驱动开发实例
Oct 08 Python
Python中使用hashlib模块处理算法的教程
Apr 28 Python
python获取一组汉字拼音首字母的方法
Jul 01 Python
python实现多线程抓取知乎用户
Dec 12 Python
Python heapq使用详解及实例代码
Jan 25 Python
Python抽象和自定义类定义与用法示例
Aug 23 Python
Django中的forms组件实例详解
Nov 08 Python
django admin后管定制-显示字段的实例
Mar 11 Python
Pytorch转keras的有效方法,以FlowNet为例讲解
May 26 Python
Python 实现国产SM3加密算法的示例代码
Sep 21 Python
解决python 执行shell命令无法获取返回值的问题
Dec 05 Python
Python 字典与字符串的互转实例
Jan 13 #Python
python 安装virtualenv和virtualenvwrapper的方法
Jan 13 #Python
Python 使用os.remove删除文件夹时报错的解决方法
Jan 13 #Python
python递归删除指定目录及其所有内容的方法
Jan 13 #Python
Python实现二分查找与bisect模块详解
Jan 13 #Python
python基础教程之五种数据类型详解
Jan 12 #Python
python实现斐波那契数列的方法示例
Jan 12 #Python
You might like
落伍首发 php+mysql 采用ajax技术的 省 市 地 3级联动无刷新菜单 源码
2006/12/16 PHP
set_include_path在win和linux下的区别
2008/01/10 PHP
php实现约瑟夫问题的方法小结
2015/03/23 PHP
分享ThinkPHP3.2中关联查询解决思路
2015/09/20 PHP
PHP实现小偷程序实例
2016/10/31 PHP
解析window.open的使用方法总结
2013/06/19 Javascript
DOM基础教程之使用DOM + Css
2015/01/20 Javascript
全面解析Bootstrap排版使用方法(文字样式)
2015/11/30 Javascript
基于javascript实现精确到毫秒的倒计时限时抢购
2016/04/17 Javascript
jQueryUI DatePicker 添加时分秒
2016/06/04 Javascript
jQuery常用样式操作实例分析(获取、设置、追加、删除、判断等)
2016/09/08 Javascript
jQuery 选择器(61种)整理总结
2016/09/26 Javascript
ReactJS实现表单的单选多选和反选的示例
2017/10/13 Javascript
cordova入门基础教程及使用中遇到的一些问题总结
2017/11/14 Javascript
详解Node.js读写中文内容文件操作
2018/10/10 Javascript
JS中的算法与数据结构之队列(Queue)实例详解
2019/08/20 Javascript
Python编码时应该注意的几个情况
2013/03/04 Python
python list语法学习(带例子)
2013/11/01 Python
Python引用类型和值类型的区别与使用解析
2017/10/17 Python
python学习笔记之列表(list)与元组(tuple)详解
2017/11/23 Python
基于python list对象中嵌套元组使用sort时的排序方法
2018/04/18 Python
Python下调用Linux的Shell命令的方法
2018/06/12 Python
python 利用for循环 保存多个图像或者文件的实例
2018/11/09 Python
使用Template格式化Python字符串的方法
2019/01/22 Python
python实现简易版学生成绩管理系统
2020/06/22 Python
django有哪些好处和优点
2020/09/01 Python
python hmac模块验证客户端的合法性
2020/11/07 Python
编写类String 的构造函数、析构函数和赋值函数
2012/09/09 面试题
企事业单位求职者的自我评价
2013/12/28 职场文书
交通事故调解协议书
2014/04/16 职场文书
2014年师德师风自我剖析材料
2014/09/27 职场文书
贪污受贿检讨书范文
2014/11/19 职场文书
2014年绩效考核工作总结
2014/12/11 职场文书
医院消毒隔离制度
2015/08/05 职场文书
2019年关于小学生课外阅读情况的分析报告
2019/12/02 职场文书
漫画「古见同学有交流障碍症」第25卷封面公开
2022/03/21 日漫