LINUX.ORG.RU

История изменений

Исправление Psych218, (текущая версия) :

#!/usr/bin/env python3

from hashlib import md5

def get_cache(filename):
    with open(filename, "rb") as f:
        data = f.read()
    return md5(data).hexdigest()

try:
    hash = get_cache(file)
except Exception:
    print('Проблемный файл {}'.format(file))

P. S. Лучше после шебанга пробел не ставить. Не помню точно, почему — вроде на каких-то юниксах (старых и коммерческих, но всё же) может не работать.

P. P. S. Если файлы большие, можно считывать не целиком, а частично, вызывая update() у md5().

Исправление Psych218, :

#!/usr/bin/env python3

from hashlib import md5

def get_cache(filename):
    with open(filename, "rb") as f:
        data = f.read()
    return md5(data).hexdigest()

try:
    hash = get_cache(file)
except Exception:
    print('Проблемный файл {}'.format(file))

P. S. Лучше после шебанга пробел не ставить. Не помню точно, почему — вроде на каких-то юниксах (старых и коммерческих, но всё же) может не работать.

Исходная версия Psych218, :

#!/usr/bin/env python3

from hashlib import md5

def get_cache(filename):
    with open(filename, "rb") as f:
        data = f.read()
    return md5(data).hexdigest()

try:
    hash = get_cache(file)
except Exception:
    print('Проблемный файл {}'.format(file))