我有一个服务,收到大小从MB到GB的CSV文件,我需要针对文件的所有内容生成 single hash .
是否有一个优化的解决方案,不需要我逐行读取文件并连接字符串中的每一行,然后生成该字符串的哈希值?对于可能包含数百万行的文件,该方法需要花费太多时间 .
任何帮助将不胜感激 . 顺便说一句,我将使用来自 hashlib 的 SHA256 进行散列 .
hashlib
SHA256
用以下代码完成:
import hashlib def generateHash(path): sha256 = hashlib.sha256() block_size=256*128 with open(path, 'rb') as f: for chunk in iter(lambda: f.read(block_size), b''): sha256.update(chunk) return sha256.hexdigest()
1 回答
用以下代码完成: