如果提供的值不是“是”,是否可以使用while循环来继续询问输入值?或者没有'?例如
someVar = None
while someVar is not (True or False):
someVar = str.lower(input())
if someVar == 'yes':
someVar = True
elif someVar== 'no':
someVar = False
答案 0 :(得分:3)
是!
一旦满足条件,请使用break
:
while True:
someVar = str.lower(input())
if someVar == 'yes':
someVar = True
break
if someVar == 'no':
someVar = False
break
您还可以使用while False
:
met = True
while met:
someVar = str.lower(input())
if someVar == 'yes':
someVar = True
break
if someVar == 'no':
someVar = False
break
由于所有字符串均为True
,因此请使用其他变量来存储True
或False
。 met
为false
后,循环就会中断。
答案 1 :(得分:1)
这应该有效
someVar = None
while (True):
someVar = str.lower(input())
if someVar == 'yes':
someVar = True
break
elif someVar == 'no':
someVar = False
break