#python #while-loop
Вопрос:
Итак, в настоящее время я застрял на шаге, в вопросах говорится, что мы хотим, чтобы пользователи вводили данные о форме пирамиды и высоте.
Пока что это мой код.
shape_input = input("shape?: ")
while shape_input not in {"pyramid, square, triangle"}:
try:
shape_input = input("shape?: ")
except EOFError:
break
return shape_input
Ответ №1:
Беда в том, что
while shape_input not in {"pyramid, square, triangle"}:
проверяет, находятся ли входные данные в наборе из одного объекта-строки «пирамида, квадрат, треугольник», в то время как вы имеете в виду:
while shape_input not in {"pyramid", "square", "triangle"}:
Однако хорошо сработано при использовании набора.
P.S. На интерфейсе пользовательского интерфейса я бы изменил сообщение внутри цикла на что-то вроде «Недопустимая форма, повторите попытку:». Вам нужно в общих чертах рассказать о том, что происходит в вашей программе: в этом случае им нужно повторно войти, потому что они ввели неверно (поэтому им нужно сказать об этом).