python例項26[計算MD5]

weixin_34377065發表於2011-03-17


程式碼如下:

from hashlib import md5

def calMD5(str):
  m 
= md5()
  m.update(str)
  
return m.hexdigest() 
   
 
def calMD5ForFile(file):
  m 
= md5()
  a_file 
= open(file, 'rb')
  m.update(a_file.read())
  a_file.close()
  
return m.hexdigest()
    
def calMD5ForFolder(dir,MD5File):
  
import os
  outfile 
= open(MD5File,'w')
  
for root, subdirs, files in os.walk(dir):
    
for file in files:
      filefullpath 
= os.path.join(root,file)
      
print filefullpath
      filerelpath 
= os.path.relpath(filefullpath,dir)
      md5 
= calMD5ForFile(filefullpath)
      outfile.write(filerelpath 
+ ' ' + md5 + '\n')
  outfile.close()
  
  
print calMD5('This is one test string')
print calMD5ForFile('c:\\test\\mytest.txt')
calMD5ForFolder(
'c:\\test','c:\\mdfile.md5')

 

hashlib模組幫助: 

http://docs.python.org/library/hashlib.html

 

 

完!

 

相關文章