Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/variables/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
python中的While循环只允许两个响应中的一个_Python_Loops_While Loop - Fatal编程技术网

python中的While循环只允许两个响应中的一个

python中的While循环只允许两个响应中的一个,python,loops,while-loop,Python,Loops,While Loop,我有一个while循环,我想限制在两个答案中的一个。一个继续循环,另一个打破循环。关键在于代码类似于以下内容: choice = "y" while choice == "y": if condition: print ("something") choice = input("continue?") 我只允许y或n个答案,所有其他答案都应再次提示。请帮忙。我发现有几件事情很接近,但是当我尝试时,我得到了一个无限循环作为提示。我想你在寻找一个哨兵控制的程序。循环

我有一个while循环,我想限制在两个答案中的一个。一个继续循环,另一个打破循环。关键在于代码类似于以下内容:

choice = "y"
while choice == "y":
    if condition:
        print ("something")
    choice = input("continue?")

我只允许y或n个答案,所有其他答案都应再次提示。请帮忙。我发现有几件事情很接近,但是当我尝试时,我得到了一个无限循环作为提示。

我想你在寻找一个
哨兵控制的程序。循环将一直询问,直到您键入标志值“否”

while (c != 'no'):
    ...     c = input("continue?")
    ...     if 2 > 1:
    ...             print('It is')

我想您正在寻找一个
哨兵控制程序
。循环将一直询问,直到您键入标志值“否”

while (c != 'no'):
    ...     c = input("continue?")
    ...     if 2 > 1:
    ...             print('It is')

您可以使用
而不是True
。循环在收到用户的输入“Y”或“N”之前不会停止。请尝试以下操作:

while True:
        choice = input('continue?')
        if choice =='Y' or choice =='N':
            print(choice )
            break
        else:
            continue

您可以使用
而不是True
。循环在收到用户的输入“Y”或“N”之前不会停止。请尝试以下操作:

while True:
        choice = input('continue?')
        if choice =='Y' or choice =='N':
            print(choice )
            break
        else:
            continue

试试这个。它接受是/是/是/是/是/否/否/否

valid=['Y','N']
while True:
        choice = str(raw_input('continue?'))
        if choice.upper()[0] in valid:
            print(choice)
            print ("Write your code here")
            break
        else:
            continue

试试这个。它接受是/是/是/是/是/否/否/否

valid=['Y','N']
while True:
        choice = str(raw_input('continue?'))
        if choice.upper()[0] in valid:
            print(choice)
            print ("Write your code here")
            break
        else:
            continue

说实话,这看起来更像是让别人帮你做作业。如果这是一个诚实的问题,您可能需要检查python教程中的关键字“break”和“If/else”语句。如果是家庭作业,我会请讲师帮助我。但我在自学Python。我只是碰巧遇到了一个部分,在没有帮助的情况下,我被卡住了,无法解决我想做的事情。说实话,这看起来更像是让别人帮你做作业。如果这是一个诚实的问题,您可能需要检查python教程中的关键字“break”和“If/else”语句。如果是家庭作业,我会请讲师帮助我。但我在自学Python。我只是碰巧遇到了一个部分,在没有帮助的情况下,我陷入了困境,无法解决我想要做的事情。也许我应该更清楚一点。如果用户回答Y,那么我希望它再次运行代码(其中显示打印内容)。如果用户回答N,我希望它结束程序。所有其他响应都会导致提示重复,直到给出有效的条目。也许我应该更清楚一点。如果用户回答Y,那么我希望它再次运行代码(其中显示打印内容)。如果用户回答N,我希望它结束程序。所有其他响应应导致提示重复,直到给出有效条目。