香港VPSpython计算文件的md5值实例
较小文件处理方法:
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版本测试通过。
一诺网络香港免备案专区,提供「香港增强VPS」和「香港特惠VPS」两种类型的高可用弹性计算服务,搭载新一代英特尔®至强®铂金处理器,接入CN2低延时高速回国带宽线路,网络访问顺滑、流畅。机房网络架构采用了BGP协议的解决方案可提供多线路互联融合网络,使得不同网络运营商线路的用户都能通过最佳路由实现快速访问。香港云VPS低至29元/月,购买链接:https://www.enuoidc.com/vps.html?typeid=2