# take operand
print('Select operator')
operator = str(input('Choose between + or * or - or /'))
if operator in ("+", "*", "-", "/"):
pass
else:
print ('error')
operator = str(input('Choose between + or * or - or /'))
我正在尝试使其检查输入的符号是否实际上是其中一个" ","*"," - "或"/"
例如,如果他们输入一封信,我希望它归还他们应该只有一个符号。它可以与许多Elif一起使用,但也打印了四次符号是不正确的。我想解决这个问题。
我认为Georgy是正确的,这与它们链接到上面的答案非常相似。但是,您还有其他一些问题可能会使您感到困惑。我认为您要寻找的是类似的东西:
# take operand
print('Select operator')
while True:
operator = str(input('Choose between + or * or - or /'))
if operator in ("+", "*", "-", "/"):
break
else:
print('error')
continue
print(operator)
您想使用while True
,因为您希望它重复直到达到结束条件。您还可以可能设置一个变量并在while循环内更改值,而不是执行break
和continue
。但是,在这种情况下,如果您遇到结束条件(用户已输入有效输入),则需要将break
从WHILE循环中出现。如果没有,您要continue
。我还会在Stackoverflow上推荐此问题并回答:何时使用" while"或" for"在Python