Первая попытка выбрать сложность, если это нормально, то вы не получаете внутри цикла, если значение не является хорошим, то вы внутри, пока вы не выберете правильное значение для сложности.
Edit:
Я добавил для вас функции с именем safe_input, таким образом, вы можете управлять, когда пользователь вводит строку или плохие символы. Я сделал его общим, так как вы можете определить текст и ожидаемый тип user_input.
def safe_input(text, instance):
user_input = raw_input(text)
try:
return instance(user_input)
except:
return False
def choose_difficulty():
return safe_input(text= '"1" for Easy \n"2" for Medium \n"3" for Hard\n', instance=int)
difficulty = choose_difficulty()
while difficulty <= 0 or difficulty >= 4:
print ('Invalid Choice. Try Again!')
difficulty = choose_difficulty()
Что происходит, «трудность» - «недействительна»? Вам нужно повторно ввести, чтобы его значение могло измениться. – DeepSpace
положите 'if' вместо' while', если вы пытаетесь что-то сделать – itzMEonTV
Попробуйте прочитать [this] (http://learnpythonthehardway.org/book/ex33.html) first –