python文件的md5加密方法


Posted in Python onApril 06, 2016

本文实例讲述了python文件的md5加密方法。分享给大家供大家参考,具体如下:

简单模式:

from hashlib import md5
def md5_file(name):
  m = md5()
  a_file = open(name, 'rb') #需要使用二进制格式读取文件内容
  m.update(a_file.read())
  a_file.close()
  return m.hexdigest()
if __main__ == '__init__':
  print md5_file('d:/test.txt')

大文件速度更快一点的方式

#!/usr/bin/python
#encoding=utf-8
import io
import sys
import hashlib
import string
def printUsage():
  print ('''''Usage: [python] pymd5sum.py <filename>''')
def main():
  if(sys.argv.__len__()==2):
    #print(sys.argv[1])
    m = hashlib.md5()
    file = io.FileIO(sys.argv[1],'r')
    bytes = file.read(1024)
    while(bytes != b''):
      m.update(bytes)
      bytes = file.read(1024)
    file.close()
    #md5value = ""
    md5value = m.hexdigest()
    print(md5value+"\t"+sys.argv[1])
    #dest = io.FileIO(sys.argv[1]+".CHECKSUM.md5",'w')
    #dest.write(md5value)
    #dest.close()
  else:
    printUsage()
main()

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
python创建和删除目录的方法
Apr 29 Python
Python中zfill()方法的使用教程
May 20 Python
Python中Django框架利用url来控制登录的方法
Jul 25 Python
python实现nao机器人手臂动作控制
Apr 29 Python
基于Python的微信机器人开发 微信登录和获取好友列表实现解析
Aug 21 Python
python 通过视频url获取视频的宽高方式
Dec 10 Python
python实现读取类别频数数据画水平条形图案例
Apr 24 Python
python读取yaml文件后修改写入本地实例
Apr 27 Python
Python参数传递对象的引用原理解析
May 22 Python
Python3 Tensorlfow:增加或者减小矩阵维度的实现
May 22 Python
python实现数据结构中双向循环链表操作的示例
Oct 09 Python
如何通过安装HomeBrew来安装Python3
Dec 23 Python
python制作爬虫并将抓取结果保存到excel中
Apr 06 #Python
python基于隐马尔可夫模型实现中文拼音输入
Apr 01 #Python
Python使用BeautifulSoup库解析HTML基本使用教程
Mar 31 #Python
Python使用Mechanize模块编写爬虫的要点解析
Mar 31 #Python
Python语言实现获取主机名根据端口杀死进程
Mar 31 #Python
Linux中Python 环境软件包安装步骤
Mar 31 #Python
Python内置的HTTP协议服务器SimpleHTTPServer使用指南
Mar 30 #Python
You might like
在Zeus Web Server中安装PHP语言支持
2006/10/09 PHP
开发大型PHP项目的方法
2006/10/09 PHP
提升PHP执行速度全攻略
2006/10/09 PHP
基于MySQL分区性能的详细介绍
2013/05/02 PHP
深入掌握include_once与require_once的区别
2013/06/17 PHP
Yii框架中 find findAll 查找出制定的字段的方法对比
2014/09/10 PHP
php+xml结合Ajax实现点赞功能完整实例
2015/01/30 PHP
PHPUnit测试私有属性和方法功能示例
2018/06/12 PHP
js onload事件不起作用示例分析
2013/10/09 Javascript
5种处理js跨域问题方法汇总
2014/12/04 Javascript
js实现键盘上下左右键选择文字并显示在文本框的方法
2015/05/07 Javascript
jQuery代码性能优化的10种方法
2016/06/21 Javascript
JavaScript数据类型学习笔记分享
2016/09/01 Javascript
简单理解Vue条件渲染
2016/12/03 Javascript
VUE 更好的 ajax 上传处理 axios.js实现代码
2017/05/10 Javascript
浅谈vue实现数据监听的函数 Object.defineProperty
2017/06/08 Javascript
JavaScript如何实现元素全排列实例代码
2019/05/14 Javascript
微信小程序引入Vant组件库过程解析
2019/08/06 Javascript
Node.js系列之发起get/post请求(2)
2019/08/30 Javascript
小程序跳转H5页面的方法步骤
2020/03/06 Javascript
ES6使用新特性Proxy实现的数据绑定功能实例
2020/05/11 Javascript
微信小程序实现弹框效果
2020/05/26 Javascript
python装饰器使用方法实例
2013/11/21 Python
Python sqlite3事务处理方法实例分析
2017/06/19 Python
Python编程实现使用线性回归预测数据
2017/12/07 Python
pandas删除行删除列增加行增加列的实现
2019/07/06 Python
python3 requests库实现多图片爬取教程
2019/12/18 Python
Python如何设置指定窗口为前台活动窗口
2020/08/12 Python
纯HTML5+CSS3制作生日蛋糕代码
2016/11/16 HTML / CSS
PHP面试题大全
2015/10/16 面试题
J2EE模式面试题
2016/10/11 面试题
高中生物教学反思
2014/02/05 职场文书
2015年计划生育责任书
2015/05/08 职场文书
党员理论学习心得体会
2016/01/21 职场文书
2019最新校园运动会广播稿!
2019/06/28 职场文书
vue中控制mock在开发环境使用,在生产环境禁用方式
2022/04/06 Vue.js