Я сделал код в python, который проверяет md5 в файле и гарантирует, что md5 соответствует исходному. Вот что я разработал:Как вычислить контрольную сумму md5 файла в Python?
#Defines filename
filename = "file.exe"
#Gets MD5 from file
def getmd5(filename):
return m.hexdigest()
md5 = dict()
for fname in filename:
md5[fname] = getmd5(fname)
#If statement for alerting the user whether the checksum passed or failed
if md5 == '>md5 will go here<':
print("MD5 Checksum passed. You may now close this window")
input ("press enter")
else:
print("MD5 Checksum failed. Incorrect MD5 in file 'filename'. Please download a new copy")
input("press enter")
exit
Но всякий раз, когда я запускаю код, я получаю следующее:
Traceback (most recent call last):
File "C:\Users\Username\md5check.py", line 13, in <module>
md5[fname] = getmd5(fname)
File "C:\Users\Username\md5check.py, line 9, in getmd5
return m.hexdigest()
NameError: global name 'm' is not defined
Что мне не хватает в моем коде?
Возможный дубликат [Генерация контрольной суммы MD5 файла?] (Http://stackoverflow.com/questions/3431825/generating-a-md5-checksum-of-a-file) – pylover