Ключ dict_ содержит правильное написание, а соответствующее ему значение содержит написание кандидата
Функция должна определять степень правильности, как указано ниже:
ИСПРАВИТЬ , если оно точно соответствует
ПОЧТИ ПРАВИЛЬНО , если не более 2 неправильных букв
НЕПРАВИЛЬНО , если более 2 буквневерно или если длина (правильное написание и правописание, данное участником) не совпадает.
и возвращает список, содержащий количество ПРАВИЛЬНЫХ ответов, количество ПОЧТИ ПРАВИЛЬНЫХ ответов и количество НЕПРАВИЛЬНЫХ
Моя программа предполагаетчто все слова в верхнем регистре и максимальная длина слова составляет 10
Вот мой код:
def find_correct(word_dict):
#start writing your code here
correct_count=0
almost_correct_count=0
incorrect_count=0
for k,v in word_dict.items():
if len(k)<=10:
if len(k)==len(v):
if k==v:
correct_count+=1
else:
for i in k:
i_count=0
#print(i)
for j in v:
#print(j)
if not i==j:
i_count+=1
break
if i_count<=2:
almost_correct_count+=i_count
else:
incorrect_count+=i_count
else:
incorrect_count+=1
else:
incorrect_count+=1
print(correct_count,almost_correct_count,incorrect_count)
Код драйвера:
word_dict={"WhIZZY":"MIZZLY","PRETTY":"PRESEN"}
print(find_correct(word_dict))
Мой вывод: 0,2,0
Ожидаемый результат: 0,0,2