python 3.5:退出if循环(或其他循环)

时间:2016-07-07 18:40:55

标签: python python-3.x

运行程序时,要求用户输入一个数字。如果该数字为1,则退出程序。如果该数字不是1,请打印该号码。

我想知道如何实现这一点。

我正在使用python 3.5。

我的代码是这样的。我总是收到错误:'break' outside loop

我该如何解决这个问题?

x = input('Please input a number: ')
if x == '1':
    print('quit')
    break
else:
    continue
print(x)

3 个答案:

答案 0 :(得分:1)

你得到错误中断外部循环,因为关键字中断用于打破循环。您正在循环外使用它,因此您会收到错误。要退出应用程序,您不应该使用break。相反,你应该使用:

sys.exit(0)

所以现在你的代码应该是这样的:

x = input('Please input a number: ')
if x == '1':
    print('quit')
    sys.exit(0)
else:
    print(x)

你也不需要在else语句中使用continue。你可以简单地将else语句留空,程序将继续,或者你可以将print(x)放在else语句中,就像我对你的代码一样。

答案 1 :(得分:0)

这不是你退出申请的方式。请尝试sys.exit(error),其中错误是错误编号。

break允许你转义循环,如下所示:

while True:
    line = 'test'
    if line = 'test':
        break
print "now I'm not in the loop"

答案 2 :(得分:0)

您的代码中没有循环,因此您需要添加while语句。将条件设置为True以使其始终运行。你也不需要else continue语句,因为那会跳过print(x)。 X会自动转换为整数,因此将其强制转换为字符串。

while True:    
    x = input('Please input a number: ')
    if str(x) == "1":
        print('quit')
        break
    print(x)