如何在循环python中返回某个点

时间:2017-10-11 16:39:48

标签: python loops

while True:
    firstName = input("Please enter your First Name\n")
    print ("Your First Name is", firstName.title())
    correct1 = input("Is this correct?\n")
        if correct1.lower() == "yes":
            break
        if correct1.lower() == "no":
            continue
        else:
            print ("Please say yes or no")

这是我的一些代码,基本上在" else"之后,我想返回代码行,说明" correct1 =输入("这是正确的> \ N'#34)"但我不知道该怎么做。任何帮助将不胜感激。

3 个答案:

答案 0 :(得分:1)

如果您在while ("Your First Name is", firstName.title())下面移动了while循环,那么您的程序可能会执行与当前操作相同的操作,同时还可以在需要时返回while循环的开头。

答案 1 :(得分:0)

这应该有效:

correct_name = False
while correct_name == False:
    firstName = input("Please enter your First Name\n")
    print ("Your First Name is", firstName.title())
    print ("Please say yes or no")
    correct1 = input("Is this correct?\n")
    if correct1.lower() == "yes":
        correct_name = True
    else:
        correct_name = False

我创建了一个名为correct_name的var并将其设置为False。因此,当correct_nameFalse时,程序将继续询问用户他们的名字,直到他们说是。一旦他们说是,该计划将结束。

答案 2 :(得分:0)

@ GreenSaber答案的延伸。您需要添加一个嵌套循环,以便在他们不输入Is this correct?yes时继续询问no,但除非他们输入,否则不要再次询问该名称no

correct_name = False
while correct_name == False:
    firstName = input("Please enter your First Name\n")
    print ("Your First Name is", firstName.title())
    while True:
        correct1 = input("Is this correct?\n")
        if correct1.lower() == "yes":
            correct_name = True
            break
        if correct1.lower() == "no":
            correct_name = False
            break
        else:
            print ("Please say yes or no")