python md5sum

本文介绍了一个简单的MD5哈希工具,用于为文件生成MD5校验和。使用方法包括直接输入文件名或使用标准输入。工具通过Python实现,利用hashlib库计算文件的MD5值。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >


## {{{ http://code.activestate.com/recipes/266486/ (r1)
#!/usr/bin/env python

## md5hash
##
## 2004-01-30
##
## Nick Vargish
##
## Simple md5 hash utility for generating md5 checksums of files.
##
## usage: md5hash <filename> [..]
##
## Use '-' as filename to sum standard input.

import hashlib
import sys

def sumfile(fobj):
'''Returns an md5 hash for an object with read() method.'''
m = hashlib.md5()
while True:
d = fobj.read(8096)
if not d:
break
m.update(d)
return m.hexdigest()


def md5sum(fname):
'''Returns an md5 hash for file fname, or stdin if fname is "-".'''
if fname == '-':
ret = sumfile(sys.stdin)
else:
try:
f = file(fname, 'rb')
except:
return 'Failed to open file'
ret = sumfile(f)
f.close()
return ret


# if invoked on command line, print md5 hashes of specified files.
if __name__ == '__main__':
print md5sum('xxx.rar')
# for fname in sys.argv[1:]:
# print '%32s %s' % (md5sum(fname), fname)
## end of http://code.activestate.com/recipes/266486/ }}}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值