Есть много вариантов, как сделать проверку.
Например, сделать функцию проверки, скажем
check_answer
, которая принимает строку ответа и возвращает логическое значение (если всё хорошо, то True, иначе False).
Затем сделать конструкцию
while not check_answer(otvet):
otvet = input()
и пока check_answer не вернёт True, этот цикл будет повторяться.
Однако, в вашем коде есть еще много существенных недостатков, которые сильно затруднят вам жизнь.
- Во-первых, это нумерованные переменные. Вместо них удобно использовать кортеж, список или словарь. Такие структуры можно перебирать в цикле (итерировать) и каждый следующий элемент обрабатывать одним и тем же набором функций.
- Кроме того, код хорошо бы разделить на функции, например так: если код делает «то, это и вот это», то у вас должны появиться функции «делай то», «делай это», «делай вот это» и еще функция «выполнить программу», изнутри которой находятся вызовы остальных функций и внутри которой каждая функция получает и возвращает в следующие функции обрабатываемые данные и результаты обработки.
Такую программу проще отлаживать по частям, можно многократно использовать одну функцию, давая ей на вход разные данные, всё будет более стройно и красиво.
С другой стороны, python позволяет всё плотненько скомкать чуть не до пары длиннющих нечитаемых строк, но так делать вам пока не надо.