gpt4 book ai didi

python - 如何在python中创建文件的校验和

转载 作者:太空宇宙 更新时间:2023-11-03 13:17:24 24 4
gpt4 key购买 nike

我正在尝试创建一个文件的校验和并将校验和保存为一个文件。所以。我监视文件,如果校验和发生变化,则执行某些操作。

这是校验和

对于test.txt

contents: a
checksum: dd18bf3a8e0a2a3e53e2661c7fb53534

我编辑文件:

contents: aa
checksum: dd18bf3a8e0a2a3e53e2661c7fb53534

这是我的代码:

python -c 'import hashlib;print hashlib.md5("test.txt").hexdigest()'

为什么校验和相同?

最佳答案

Why are the checksums teh same?

因为您正在计算相同内容 test.txt 的哈希值。

这是一个通用工具(广泛使用的 md5sum CLI 工具的克隆,可在许多 Linux 和 UNIX 平台上使用),可以很好地扩展大文件。 p>

md5sum.py:

#!/usr/bin/env python

"""Tool to compuete md5 sums of files"""

import sys
from hashlib import md5


def md5sum(filename):
hash = md5()
with open(filename, "rb") as f:
for chunk in iter(lambda: f.read(128 * hash.block_size), b""):
hash.update(chunk)
return hash.hexdigest()


def main():
if len(sys.argv) < 2:
print "Usage: md5sum <filename>"
raise SystemExit(1)

print md5sum(sys.argv[1])


if __name__ == "__main__":
main()

大量借自:https://bitbucket.org/prologic/tools/src/tip/md5sum

关于python - 如何在python中创建文件的校验和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24847602/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com