python文件的md5加密方法

yipeiwu_com6年前Python基础

本文实例讲述了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语言中类似于Windows系统的dir命令的列出文件功能,然后描述如何测试一个文件名对应的是一个标准文件、目录还是链接,以及提...

Python代码解决RenderView窗口not found问题

Python代码解决RenderView窗口not found问题

源起   Error:setParent: Object 'renderView' not found   这是一个在工作中很常见的问题,以前做特效的时候有10%的概率会碰到,多发生在打...

matplotlib设置legend图例代码示例

matplotlib设置legend图例代码示例

本文主要是关于matplotlib的一些基本用法。 Demo import matplotlib.pyplot as plt import numpy as np # 绘制普通图像...

Django框架模板介绍

定义:在Django框架中,模板是可以帮助开发者快速生成呈现给用户页面的工具 模板的设计方式实现了我们MVT中VT的解耦,VT有着N:M的关系,一个V可以调用任意T,一个T可以供任意V使...

Python使用MySQLdb for Python操作数据库教程

本文详细讲述了Python使用MySQLdb for Python操作数据库的方法,分享给大家供大家参考。具体如下: 一般来说网站就是要和数据库进行交互,否则什么都不用做了。今天我们就来...