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深入学习之内存管理
Aug 31 Python
基于python的Tkinter实现一个简易计算器
Dec 31 Python
python机器学习案例教程——K最近邻算法的实现
Dec 28 Python
Python+tkinter模拟“记住我”自动登录实例代码
Jan 16 Python
python数字图像处理实现直方图与均衡化
May 04 Python
python SQLAlchemy 中的Engine详解
Jul 04 Python
django基于restframework的CBV封装详解
Aug 08 Python
python 实现单通道转3通道
Dec 03 Python
使用python写一个自动浏览文章的脚本实例
Dec 05 Python
解决keras加入lambda层时shape的问题
Jun 11 Python
python批量生成条形码的示例
Oct 10 Python
python基于tkinter制作无损音乐下载工具
Mar 29 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
海贼王:最美的悬赏令!
2020/03/02 日漫
修改了一个很不错的php验证码(支持中文)
2007/02/14 PHP
深入PHP数据加密详解
2013/06/18 PHP
php堆排序(heapsort)练习
2013/11/13 PHP
php对数组排序代码分享
2014/02/24 PHP
jquery 关键字“拖曳搜索”之“拖曳”以及 图片“提示自适应放大”效果 的实现
2010/04/18 Javascript
理解Javascript_05_原型继承原理
2010/10/13 Javascript
javascript获取选中的文本的方法代码
2013/10/30 Javascript
Extjs4中Form的使用之本地hiddenfield
2013/11/26 Javascript
js二维数组排序的简单示例代码
2014/01/24 Javascript
JavaScript中for循环的使用详解
2015/06/03 Javascript
js实现带圆角的两级导航菜单效果代码
2015/08/24 Javascript
react.js 翻页插件实例代码
2017/01/19 Javascript
Vue.js学习之过滤器详解
2017/01/22 Javascript
canvas绘制环形进度条
2017/02/23 Javascript
详解Angular 4.x Injector
2017/05/04 Javascript
JavaScript正则表达式的贪婪匹配和非贪婪匹配
2017/09/05 Javascript
JavaScript中引用vs复制示例详析
2018/12/06 Javascript
详解React项目如何修改打包地址(编译输出文件地址)
2019/03/21 Javascript
深入浅析JavaScript中的in关键字和for-in循环
2020/04/20 Javascript
[03:08]迎霜节狂欢!2018年迎霜节珍藏Ⅰ一览
2018/12/25 DOTA
python判断端口是否打开的实现代码
2013/02/10 Python
Python中几个比较常见的名词解释
2015/07/04 Python
基于python if 判断选择结构的实例详解
2019/05/06 Python
详解Django admin高级用法
2019/11/06 Python
Python和Anaconda和Pycharm安装教程图文详解
2020/02/04 Python
Python实现检测文件的MD5值来查找重复文件案例
2020/03/12 Python
100%羊绒:NakedCashmere
2020/08/26 全球购物
乡镇党建工作汇报材料
2014/08/14 职场文书
村创先争优活动总结
2014/08/28 职场文书
2015小学教师德育工作总结
2015/05/12 职场文书
因家庭原因离职的辞职信范文
2015/05/12 职场文书
pytorch实现手写数字图片识别
2021/05/20 Python
tensorflow中的数据类型dtype用法说明
2021/05/26 Python
python中如何对多变量连续赋值
2021/06/03 Python
MySQL 5.7常见数据类型
2021/07/15 MySQL