常用模块--hashlib--作业
作业:对一个文件进行摘要算法,要求分段摘要,进阶操作:按字节分段摘要
思路:注意文件里的换行符是存在的,所以在按行取或按字节取都无需再去空格或换行符。
思路:可以先通过bytes打印出来看看是否包含了换行符
import hashlib def hashlib_md5(str): md6 = hashlib.md5() md6.update(bytes(str,encoding='utf-8')) return md6.hexdigest() md5 = hashlib.md5() with open('msg','r+',encoding='utf-8') as f: # 按行进行摘要算法 # for i in f: # md5.update(bytes(i,encoding='utf-8')) # # print(md5.hexdigest()) # 按字节进行摘要算法 for i in f.read(128): print(i) md5.update(bytes(i,encoding='utf-8')) print(md5.hexdigest())
#一次性读取整个文件 f.seek(0) f = f.read() print(hashlib_md5(f)) # 调用函数
浙公网安备 33010602011771号