# 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 /'))
我试图让它检查输入的符号是否实际上是这些“ +”,“ *”,“-”或“ /”之一
例如,如果他们输入字母,我希望它返回只应使用一个符号。它适用于许多省略号,但也可以打印四次该符号不正确的内容。我想解决这个问题。
答案 0 :(得分:0)
我认为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
。但是,在这种情况下,如果您遇到结束条件(用户输入了有效的输入),那么您想从while循环中退出break
。如果不是,则要continue
。我还建议在stackoverflow上提出以下问题和答案:When to use "while" or "for" in Python