Вы не проверяете переменную в while not in range(1, 3):
, потому что вы не определили никакую переменную в этом операторе,
Таким образом, вы должны ввести правильный оператор, например,
while x not in range(1, 3):
ИЛИ
while not x in range(1, 3):
Во-вторых, input('...')
всегда будет возвращать тип str
, а не int
, поэтому вы должны изменить его на
x = input('Choose 1 or 2: ')
Таким образом, ваш полный код будет:
x = 0
while x not in range(1,3):
x = int(input("Choose1 or 2 : "))
Вы можете добавить исключение, если x
не равно 1 или 2, например:
x = int() #same as x = 0
while x not in range(1, 3):
try:
x = int(input('Choose 1 or 2: '))
except:
print('Chosen number is not 1 or 2')
if x not in range(1, 3):
print('Chosen number is not 1 or 2')