使用hashlib进行文件校验
import hashlib import os path = r'D:\CentOS 64 位' def file_md5(path): """ 文件校验 :param path:文件的路径 :return: 文件的密文 """ path_size = os.path.getsize(path) # 计算文件的大小 md5 = hashlib.md5() # 选择md5加密 with open(path, 'rb') as f: while path_size >= 4096: # 如果文件大小大于4096,进入循环 cont = f.read(4096) # 每次读取文件读取4096个字节 md5.update(cont) path_size -= 4096 else: cont = f.read() # 如果文件小于4096就直接全部读取 if cont: md5.update(cont) return md5.hexdigest() # 返回加密的文件 def jy(path1, path2): """ 传送文件去校验 :param path1: 第一个文件 :param path2: 第二个文件 :return: 结果(True,False) """ return file_md5(path1) == file_md5(path2) path1 = r'D:\CentOS 64 位\CentOS 64 位-Snapshot1.vmem' path2 = r'D:\CentOS 64 位\CentOS 64 位-Snapshot1 - 副本.vmem' print(jy(path1, path2))