python - 生成文件的 MD5 校验和

标签 python md5 checksum hashlib

是否有任何简单的方法可以在 Python 中生成(和检查)文件列表的 MD5 校验和? (我正在开发一个小程序,我想确认文件的校验和)。

最佳答案

您可以使用 hashlib.md5()

请注意,有时您无法将整个文件放入内存中。在这种情况下,您必须按顺序读取 4096 字节的 block 并将它们提供给 md5 方法:

import hashlib
def md5(fname):
    hash_md5 = hashlib.md5()
    with open(fname, "rb") as f:
        for chunk in iter(lambda: f.read(4096), b""):
            hash_md5.update(chunk)
    return hash_md5.hexdigest()

注意: hash_md5.hexdigest() 将返回摘要的 hex 字符串 表示,如果您只需要打包字节使用 return hash_md5.digest(),这样就不用转换回来了。

关于python - 生成文件的 MD5 校验和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3431825/

相关文章:

python - Django:为什么 Django 模型字段是类属性?

python - isinstance(False, int) 返回 True

python - pandas GroupBy 具有 NaN(缺失)值的列

c# - 如何将 MD5 哈希转换为字符串并将其用作文件名

c# - 使用校验和进行文件比较

curl - 带校验和的 Artifactory 上传

python - 最大成对产品快速解决方案

Tomcat 8 - 数据库领域配置

php - md5解密可以吗?

hash - 哪些哈希算法是可并行的?优化多核 CPU 上大文件的哈希处理