Как в python вернуться на шаг назад в цикле for? - Общение Python мододелов

Вопрос Как в python вернуться на шаг назад в цикле for?

Регистрация
23 Мар 2013
Сообщения
96
Репутация
0
Спасибо
0
Монет
0
Например это викторина, пользователь не правильно ввёл ответ и нужно чтобы программа его переспрашивала до тех пор, пока он не введёт ответ верно.
 
Регистрация
11 Ноя 2013
Сообщения
79
Репутация
0
Спасибо
0
Монет
0
никак!
зачем вам вообще это понадобилось?
 
Регистрация
13 Ноя 2013
Сообщения
70
Репутация
-2
Спасибо
0
Монет
0
Да никак, используй while и управляй через счетчик..
 
Регистрация
20 Авг 2013
Сообщения
90
Репутация
1
Спасибо
1
Монет
0
Отвечая именно на вопрос в заголовке: использовать свой класс
в качестве итерируемого объекта и в нем делать действия, которые будут являться возвратом.
А так вайлом проще конечно. class TipaRange:
def __init__(self, a, b):
self.a = a - 1
self.b = b

def __iter__(self):
return self

def __next__(self):
self.a += 1
if self.a >= self.b:
raise StopIteration
return self.a

def return_back(self):
self.a -= 1


r = TipaRange(1, 5)
for i in r:
x = int(input(f"{i} % 2 = "))
if i % 2 != x:
r.return_back()
290715722_f6450a282fa8df2dc2a4b0cb2489fe89_800.png

 
Сверху Снизу