директории найти файлы с одинаковым хешем и перезаписать только уникальные. Вот код import glob
import hashlib
uniq = set()
src = "/home/yuliia/pythonProject11/11"
for fname in glob.glob('/home/yuliia/pythonProject11/11/*'):
with open(fname, "rb") as f:
sig = hashlib.sha256(f.read()).digest()
if sig not in uniq:
uniq.add(sig)
# print(fname)
file = open('src', 'w')
file.write(fname)
Ну во-первых ты каждый раз как src открываешь его перезаписываешь
Открой его один раз, и пиши туда строчки
file = open('src', 'w') src - текстовое значение
Не текстовое, ошиблась
Сколько неуникальных файлов находит?
Пишет только имя последнего файла?
Когда убрала кавычки, ошибка 21, то есть ничего не записывает, а так, по условию да, пишет все уникальные файлы
А если так? import glob import hashlib uniq = set() names = '' src = "/home/yuliia/pythonProject11/11.txt" for fname in glob.glob('/home/yuliia/pythonProject11/11/*'): with open(fname, "rb") as f: sig = hashlib.sha256(f.read()).digest() if sig not in uniq: names += fname uniq.add(sig) with open(src, "w") as f: f.write(names)
Обсуждают сегодня