fiz meu código pensando em uma saída no formato o aluno {aluno} tirou {nota_final}/5
def correcao(gabarito, notas):
try:
for aluno in range(0, 3):
nota = []
for i in range(len(gabarito)):
if notas[aluno][i] not in ['A','B','C','D']:
raise ValueError(f'A alternativa {notas[aluno][i]} não é uma opção de alternativa válida')
if gabarito[i] == notas[aluno][i]:
nota.append(notas[aluno][i])
nota_final = len(nota)
print(f'o aluno {aluno + 1} tirou {nota_final}/5')
except Exception as e:
print(e)
fazendo o teste sem exceções, o código roda perfeitamente.só que quando faço o teste com exceções, o código retorna a nota do aluno 1 e só depois o print do raise:
o que devo corrigir no código para que a saída seja apenas 'A alternativa {notas[aluno][i]} não é uma opção de alternativa válida'?