繁体   English   中英

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

[英]python, how to quit while loop when answer is wrong

我刚开始使用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")

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

您需要使用布尔值控制 while 并在值小于和break 时将其设为false

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

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

您的 if 语句缩进不正确。 它需要在while循环下。 如果你想用另一种方式不断地询问用户他们的年龄,如果他们太年轻,那么退出程序:

   import sys

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

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

我认为您可能想使用 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.

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

你可能想尝试这样的事情

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM