python 计算文件的md5值实例

2017-01-23 20:45:39 7709

较小文件处理方法:

import hashlib
import os
 
def get_md5_01(file_path):
  md5 = None
  if os.path.isfile(file_path):
    f = open(file_path,'rb')
    md5_obj = hashlib.md5()
    md5_obj.update(f.read())
    hash_code = md5_obj.hexdigest()
    f.close()
    md5 = str(hash_code).lower()
  return md5
 
if __name__ == "__main__":
  file_path = r'D:	est	est.jar'
  md5_01 = get_md5_01(file_path)
  print(md5_01)

   

较大文件处理方法:

import hashlib
import os
 
def get_md5_02(file_path):
  f = open(file_path,'rb') 
  md5_obj = hashlib.md5()
  while True:
    d = f.read(8096)
    if not d:
      break
    md5_obj.update(d)
  hash_code = md5_obj.hexdigest()
  f.close()
  md5 = str(hash_code).lower()
  return md5
 
if __name__ == "__main__":
  file_path = r'D:	est	est.jar'
  md5_02 = get_md5_02(file_path)
  print(md5_02)

   

说明:对于同一个文件,两种方法计算得到的md5是一致的。

注:以上代码在Python 3.x版本测试通过。


提交成功!非常感谢您的反馈,我们会继续努力做到更好!

这条文档是否有帮助解决问题?

非常抱歉未能帮助到您。为了给您提供更好的服务,我们很需要您进一步的反馈信息:

在文档使用中是否遇到以下问题: