Я работаю над небольшим проектом на Python. У меня есть список файлов, для которых я хочу получить md5checksums. Затем он сохраняет контрольные суммы в другом списке. Затем он снова проверяет и проверяет, отличаются ли они. У меня есть функция для получения контрольных сумм, но сейчас я не могу понять, как добавить их в список. Вот что я пытаюсь
<code>
import sys, hashlib
files = ['/home/file1', '/home/file2', '/home/file3', '/etc/passwd']
md5s = []
def getmd5(file, ex="", inc=""):
m = hashlib.md5()
try:
fd = open(file,"rb")
except IOError:
print "Can't retrieve MD5sum for ", file
pass
content = fd.readlines()
fd.close()
for eachLine in content:
if ex and eachLine.startswith(ex):
continue
m.update(eachLine)
m.update(inc)
a = m.hexdigest()
md5s.append(a)</p>
<p>for i in lists:
getmd5(i)
print md5s
Но когда я пытаюсь это сделать, я получаю 4 списка примерно так:
<code>
['729aebf5b3a841d3ef815e297ae2ce07']
['729aebf5b3a841d3ef815e297ae2ce07', '1c9bc3339234fa7d551bdb8da004c8ad']
['729aebf5b3a841d3ef815e297ae2ce07', '1c9bc3339234fa7d551bdb8da004c8ad', '0c01d98119386db13beb1bfdbae7ba2b']
['729aebf5b3a841d3ef815e297ae2ce07', '1c9bc3339234fa7d551bdb8da004c8ad', '0c01d98119386db13beb1bfdbae7ba2b', 'b51c93a2f965b75de903d159720dd6e6']
То, что я хотел бы сделать, это сохранить каждую контрольную сумму хеша в списке md5s и затем прочитать, чтобы увидеть, отличаются ли они.