python,答案错误时如何退出while循环

时间:2018-12-21 18:27:02

标签: python while-loop exit

我刚开始使用python。在我的代码中,我要求用户年龄。如果他未满18岁,我想退出该计划,而不仅仅是再问这个问题。 我该怎么做呢?

我尝试了断点,断点,退出,系统退出,系统错误。

a = 3
while a < 4:
    print ("age: ")
    age = input()

    age = int(age)



    if (age >= 18):
        print("welcome")
        a = a + 3
    else:
        print("too young")
        SystemExit
        exit
        break
        quit

print("oi")

程序一次又一次地问这个问题。

4 个答案:

答案 0 :(得分:1)

如果值较小且 break ,则需要使用 boolean 进行控制,并将其设置为 false >

check = True
while check:
    age = int(input("age: "))

    if (age < 18):
        print('too young')
        check = False
        break
    else:
        print("welcome")

答案 1 :(得分:0)

您的if语句未正确缩进。它需要在while循环下。如果您想通过另一种方式不断询问用户的年龄以及他们是否太小,请退出该程序:

   import sys

   while True:    
       age = int(input('Enter your age'))

       if age < 18:
           sys.exit('You are too young')

答案 2 :(得分:0)

我认为您可能想要使用sys.exit(),如上面其他建议那样,或者您可以尝试使用布尔值作为'while'循环的条件。

oldEnough = True
while oldEnough == True:
    age = int(input("Age: "))
    if age > 17:
        print ("Welcome")
        oldEnough = True;
        a += 3

    elif age < 18:
        print ("Too young")
        oldEnough = False
        break; # just for good measure.

我希望这对您有用。祝你好运!

答案 3 :(得分:-1)

您可能想尝试类似的东西

while True:
    age = input("Input your age: ")
    age = int(age)
    if age >= 18:
        print("welcome")
        break
    else:
        print("too young")
        exit(0)  # exit code 0 means everything is ok, exit with a diff code to indicate an issue