1
Amy 原创整理|资料核验:2026-10-31
【官方规则】hashlib 的哈希对象可以多次调用 update,连续输入字节数据。文档说明,先 update(a) 再 update(b),与一次 update(a+b) 的效果相同。
这意味着对大文件计算 SHA-256 等摘要时,可以保持同一个哈希对象,按顺序读取并更新若干数据块,最后获取 hexdigest。无需为了摘要计算把整个文件一次性读入内存。
【教学练习】用同一个小文件比较两条路径:一次读取全部字节,以及按固定大小分块读取;两边选择同一算法,得到的摘要应一致。不要为每个块创建新对象后,只保存最后一块的结果。
【Amy 的检查建议】按原始字节读取,并保持块的先后顺序。文本模式可能涉及编码或换行处理,应先明确自己要校验的是文件字节还是处理后的文本。摘要相同能辅助检查内容一致性,但不能单靠一个随文件一起收到的摘要就认定来源可信。