如果提供的值不是“是”或“否”,是否可以使用 while 循环来不断询问输入值?例如
someVar = None
while someVar is not (True or False):
someVar = str.lower(input())
if someVar == 'yes':
someVar = True
elif someVar== 'no':
someVar = False
Run Code Online (Sandbox Code Playgroud)
是的!
满足条件后,使用break:
while True:
someVar = str.lower(input())
if someVar == 'yes':
someVar = True
break
if someVar == 'no':
someVar = False
break
Run Code Online (Sandbox Code Playgroud)
您还可以使用while False:
met = True
while met:
someVar = str.lower(input())
if someVar == 'yes':
someVar = True
break
if someVar == 'no':
someVar = False
break
Run Code Online (Sandbox Code Playgroud)
由于所有字符串都是True,请使用另一个变量来存储True或False。一旦met是false,那么循环就会中断。