经典算法题(4)计算大文件md5值

计算大文件md5值

file1 = r'D:\PyCharmProject\python全栈S20\day016 正则表达式\day016_homework\doc\file2'
def get_file_md5(file):
    fsize = os.path.getsize(file)
    obj = hashlib.md5()
    with open(file,'rb') as f:
        while fsize >= 4096:
            content = f.read(4096)
            obj.update(content)
            fsize -= 4096
        else:
            content = f.read(fsize)
            obj.update(content)
    return obj.hexdigest()

def cmp_file(f1,f2):
    md5_1 = get_file_md5(f1)
    md5_2 = get_file_md5(f2)
    return md5_1 == md5_2


if __name__ == '__main__':
    file1 = r'D:\PyCharmProject\python全栈S20\day016 正则表达式\day016_homework\doc\file2'

    file2 = r'D:\PyCharmProject\python全栈S20\day016 正则表达式\day016_homework\doc1\file1'
    ret = cmp_file(file1, file2)
    print(ret)

 

posted @ 2019-04-12 17:08  ryxiong728  阅读(264)  评论(0)    收藏  举报