Python md5, sha1 хэш-суммы файла
by wa 31.03.2014 26090 просмотров
На досуге понадобилось рассчитатывать на лету md5 и sha1 хэш-суммы файлов. Так как Python уже с "батарейками", было решено использовать hashlib. Получилось нечто такое.
Работает даже с большими файлами, т.к. считывает файл блоками по 8192 байта. Размер блока можно увеличить и увеличится размер расходуемой памяти. Хотя я могу ошибаться.
import hashlib
def get_hash_md5(filename):
with open(filename, 'rb') as f:
m = hashlib.md5()
while True:
data = f.read(8192)
if not data:
break
m.update(data)
return m.hexdigest()