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实现跨文件全局变量的方法
Jul 07 Python
python操作mongodb根据_id查询数据的实现方法
May 20 Python
Python3实现将文件归档到zip文件及从zip文件中读取数据的方法
May 22 Python
Python中%r和%s的详解及区别
Mar 16 Python
python2和python3的输入和输出区别介绍
Nov 20 Python
Python中的heapq模块源码详析
Jan 08 Python
python3射线法判断点是否在多边形内
Jun 28 Python
python实现LBP方法提取图像纹理特征实现分类的步骤
Jul 11 Python
python通过robert、sobel、Laplace算子实现图像边缘提取详解
Aug 21 Python
Tensorflow 自定义loss的情况下初始化部分变量方式
Jan 06 Python
通过实例了解Python异常处理机制底层实现
Jul 23 Python
Python爬取奶茶店数据分析哪家最好喝以及性价比
Sep 23 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
中国第一家无线电行
2021/03/01 无线电
一次编写,随处运行
2006/10/09 PHP
php 缓存函数代码
2008/08/27 PHP
Zend studio文件注释模板设置方法
2013/09/29 PHP
php导出word文档与excel电子表格的简单示例代码
2014/03/08 PHP
Thinkphp5行为使用方法汇总
2017/12/21 PHP
laravel5环境隐藏index.php后缀(apache)的方法
2019/10/12 PHP
tp5框架前台无限极导航菜单类实现方法分析
2020/03/29 PHP
jQuery Div中加载其他页面的实现代码
2009/02/27 Javascript
JS array 数组详解
2009/03/22 Javascript
JavaScript中使用typeof运算符需要注意的几个坑
2014/11/08 Javascript
jQuery插件开发的五种形态小结
2015/03/04 Javascript
Vue.js每天必学之方法与事件处理器
2016/09/06 Javascript
微信小程序 devtool隐藏的秘密
2017/01/21 Javascript
详解Vuejs2.0之异步跨域请求
2017/04/20 Javascript
Vue动态组件实例解析
2017/08/20 Javascript
详解VueJS应用中管理用户权限
2018/02/02 Javascript
微信小程序定位当前城市的方法
2018/07/19 Javascript
vue实现后台管理权限系统及顶栏三级菜单显示功能
2019/06/19 Javascript
JS实现容器模块左右拖动效果
2020/01/14 Javascript
JavaScript实现轮播图效果
2020/10/30 Javascript
Python下singleton模式的实现方法
2014/07/16 Python
Python中index()和seek()的用法(详解)
2017/04/27 Python
Python编程pygame模块实现移动的小车示例代码
2018/01/03 Python
Python3使用正则表达式爬取内涵段子示例
2018/04/22 Python
python使用PIL模块获取图片像素点的方法
2019/01/08 Python
对Python3 解析html的几种操作方式小结
2019/02/16 Python
解决django后台样式丢失,css资源加载失败的问题
2019/06/11 Python
分享一个pycharm专业版安装的永久使用方法
2019/09/24 Python
python爬虫爬取笔趣网小说网站过程图解
2019/11/18 Python
使用TensorBoard进行超参数优化的实现
2020/07/06 Python
匈牙利超级网上商店和优惠:Alza.hu
2019/12/17 全球购物
2014年乡镇民政工作总结
2014/12/02 职场文书
2015年综治宣传月活动总结
2015/03/25 职场文书
Python3.8官网文档之类的基础语法阅读
2021/09/04 Python
浅谈JavaScript作用域
2021/12/06 Javascript