Как вернуть в начальный цикл?
Не знаю, как кратко описать проблему, попробую
while True:
if not user_input:
while True:
user_input = input('Enter your ID: ')
try:
int(user_input)
if len(user_input) !=11:
raise UserWarning
except ValueError:
print('Code is not numeric')
except UserWarning:
if len(user_input) > 11:
print('Code is too long')
else:
print('Code is too short')
else:
print(user_input)
break
user_choice = input('Please choose:\n'
'1.Get gender\n'
'2.Get date of birth\n'
'3.Get region of birth\n'
'4. Validate ID\n'
'5.Change ID\n'
'0.Exit\n'
'--->')
elif user_choice == '5':
pass
так вот, когда я хочу вернуть 5 пункт user_choice (Change ID) в саамый начальный цикл, что бы я смог вставить новый айди - у меня это не получается, как это сделать, как сделать так, что бы я ввел новый айди и проходил дальше проверку? Объяснил как мог, если не понятно, задавайте еще вопросов.
Ответы (1 шт):
Автор решения: Сергей Ш
→ Ссылка
как пример
user_input =''
while True:
if not user_input:
while True:
user_input = input('Enter your ID: ')
try:
int(user_input)
except ValueError:
print('Code is not numeric')
continue
if len(user_input) > 11:
print('Code is too long')
continue
elif len(user_input) < 11:
print('Code is too short')
continue
print(user_input)
break
user_choice = input('Please choose:\n'
'1.Get gender\n'
'2.Get date of birth\n'
'3.Get region of birth\n'
'4. Validate ID\n'
'5.Change ID\n'
'0.Exit\n'
'--->')
if user_choice == '0':
break
elif user_choice == '5':
user_input = ''
continue