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程序设计入门(2)变量类型简介
Jun 16 Python
基于python脚本实现软件的注册功能(机器码+注册码机制)
Oct 09 Python
python enumerate函数的使用方法总结
Nov 15 Python
浅谈python中np.array的shape( ,)与( ,1)的区别
Jun 04 Python
python判断完全平方数的方法
Nov 13 Python
python单例模式的多种实现方法
Jul 26 Python
Python企业编码生成系统之系统主要函数设计详解
Jul 26 Python
Python 实现黑客帝国中的字符雨的示例代码
Feb 20 Python
python中关于数据类型的学习笔记
Jul 19 Python
Python压缩模块zipfile实现原理及用法解析
Aug 14 Python
一行代码python实现文件共享服务器
Apr 22 Python
Python机器学习实战之k-近邻算法的实现
Nov 27 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将DateTime对象转化为友好时间显示的实现代码
2011/09/20 PHP
Yii2中使用join、joinwith多表关联查询
2016/06/30 PHP
使用正则去除php代码中的注释方法
2016/11/03 PHP
jQuery1.5.1 animate方法源码阅读
2011/04/05 Javascript
使用jQuery+HttpHandler+xml模拟一个三级联动的例子
2011/08/09 Javascript
javascript权威指南 学习笔记之null和undefined
2011/09/25 Javascript
如何让页面在打开时自动刷新一次让图片全部显示
2012/12/17 Javascript
Jquery实现显示和隐藏的4种简单方式
2013/08/28 Javascript
5个数组Array方法: indexOf、filter、forEach、map、reduce使用实例
2015/01/29 Javascript
基于HTML模板和JSON数据的JavaScript交互(移动端)
2016/04/06 Javascript
BootStrap Table 分页后重新搜索问题的解决办法
2016/08/08 Javascript
详解Vue.js搭建路由报错 router.map is not a function
2017/06/27 Javascript
AngularJS 实现购物车全选反选功能
2017/10/24 Javascript
angular实现input输入监听的示例
2018/08/31 Javascript
《javascript设计模式》学习笔记五:Javascript面向对象程序设计工厂模式实例分析
2020/04/08 Javascript
微信小程序的引导页实现代码
2020/06/24 Javascript
JavaScript实现H5接金币功能(实例代码)
2021/02/22 Javascript
[02:52]2014DOTA2西雅图国际邀请赛 CIS战队巡礼
2014/07/07 DOTA
[05:41]2014DOTA2西雅图国际邀请赛 小组赛7月10日TOPPLAY
2014/07/10 DOTA
python提取具有某种特定字符串的行数据方法
2018/12/11 Python
Python绘图实现显示中文
2019/12/04 Python
如何使用PyCharm引入需要使用的包的方法
2020/09/22 Python
h5页面唤起app如果没安装就跳转下载(iOS和Android)
2020/06/03 HTML / CSS
Bogner美国官网:滑雪服中的”Dior”
2018/01/30 全球购物
美国购物网站:Clickhere2shop
2021/01/28 全球购物
五一家具促销方案
2014/01/10 职场文书
出生医学证明书
2014/09/15 职场文书
政府领导干部个人对照检查材料思想汇报
2014/09/24 职场文书
2015年度村委会工作总结
2015/04/29 职场文书
外科护士长工作总结
2015/08/12 职场文书
2016年毕业实习心得体会范文
2015/10/09 职场文书
奶茶店的创业计划书该怎么写?
2019/07/15 职场文书
营销策划分析:怎么策划才能更好销量产品?
2019/09/04 职场文书
简单介绍 http请求响应参数、无连接无状态、MIME、状态码、端口、telnet、curl
2021/03/31 HTML / CSS
vue实现登陆页面开发实践
2022/05/30 Vue.js
Apache Kafka 分区重分配的实现原理解析
2022/07/15 Servers