def checkclas(x):
while x == "A" or "B" or "C" is not True:
x = input("You have to choose one of the three classes: ").upper()
return x
clas = input("which class are you in? ").upper()
clas = checkclas(clas)
print (clas)
Я попытался решить проблему с этим кодом, но не смог. Я хочу, чтобы программа проверяла, допустим ли класс ввода, а затем распечатать его, но он продолжает работать в цикле while навсегда, хотя я ввожу правильный класс. Я думаю, что проблема связана с (или) утверждением. Если у кого-то есть решение, пожалуйста, помогите мне, это для моей оценки компьютерной науки, и код должен быть эффективным.Как использовать ярлык для оператора (или) в python
'while x not in" ABC ":'. – Evert
Возможный дубликат [Как проверить одну переменную на несколько значений?] (Http://stackoverflow.com/questions/15112125/how-do-i-test-one-variable-against-multiple-values) – user2357112
Не то, чтобы ваш текущий оператор оценивается как: x == "A", или "B", или "C" не является True. По-вашему, это должно быть '(x ==" A "или x ==" B "или x ==" C ") не является True'. – Evert