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 06 Python
Python中的引用和拷贝浅析
Nov 22 Python
Python tkinter模块中类继承的三种方式分析
Aug 08 Python
详解python中的 is 操作符
Dec 26 Python
Python切片操作实例分析
Mar 16 Python
python中datetime模块中strftime/strptime函数的使用
Jul 03 Python
Python单向链表和双向链表原理与用法实例详解
Aug 31 Python
如何使用Python 打印各种三角形
Jun 28 Python
python3 批量获取对应端口服务的实例
Jul 25 Python
django创建超级用户过程解析
Sep 18 Python
Python换行与不换行的输出实例
Feb 19 Python
python 下载m3u8视频的示例代码
Nov 11 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
如何在PHP中使用Oracle数据库(6)
2006/10/09 PHP
Apache2中实现多网站域名绑定的实现方法
2011/06/01 PHP
ThinkPHP类似AOP思想的参数验证的实现方法
2019/12/18 PHP
jQuery 动画基础教程
2008/12/25 Javascript
js左侧多级菜单动态的解决方案
2010/02/01 Javascript
js关闭子窗体刷新父窗体实现方法
2012/12/04 Javascript
JS获取url链接字符串 location.href
2013/12/23 Javascript
JavaScript使用DeviceOne开发实战(三)仿微信应用
2015/12/02 Javascript
js中通过getElementsByName访问name集合对象的方法
2016/10/31 Javascript
js使用i18n实现页面国际化的方法
2017/05/09 Javascript
使用jQuery实现页面定时弹出广告效果
2017/08/24 jQuery
Elasticsearch实现复合查询高亮结果功能
2019/09/10 Javascript
[01:25]2014DOTA2国际邀请赛 zhou分析LGD比赛情况
2014/07/14 DOTA
python算法学习之计数排序实例
2013/12/18 Python
python实现多线程采集的2个代码例子
2014/07/07 Python
Python实现的井字棋(Tic Tac Toe)游戏示例
2018/01/31 Python
Python Pandas 如何shuffle(打乱)数据
2019/07/30 Python
Python3网络爬虫开发实战之极验滑动验证码的识别
2019/08/02 Python
Django自带日志 settings.py文件配置方法
2019/08/30 Python
Python字符串中删除特定字符的方法
2020/01/15 Python
解决pycharm中opencv-python导入cv2后无法自动补全的问题(不用作任何文件上的修改)
2020/03/05 Python
jupyter notebook 重装教程
2020/04/16 Python
基于python纯函数实现井字棋游戏
2020/05/27 Python
Python爬虫之Selenium鼠标事件的实现
2020/12/04 Python
巧用 CSS3的webkit-box-reflect 倒影实现各类动效
2021/03/05 HTML / CSS
全球性的在线时尚男装零售商:boohooMAN
2016/12/17 全球购物
Kate Spade美国官网:纽约新兴时尚品牌,以包包闻名于世
2017/11/09 全球购物
Nike澳大利亚官网:Nike.com (AU)
2019/06/03 全球购物
新西兰优惠网站:Treat Me
2019/07/04 全球购物
绘画专业自荐信范文
2014/02/23 职场文书
关爱残疾人标语
2014/06/25 职场文书
初三英语教学计划
2015/01/23 职场文书
感恩节寄语2015
2015/03/24 职场文书
农业项目合作意向书
2015/05/08 职场文书
七年级语文教学反思
2016/03/03 职场文书
MySQL中dd::columns表结构转table过程及应用详解
2022/09/23 MySQL