在Python 3中遇到错误(异常,循环)

时间:2013-05-22 13:42:01

标签: python exception loops while-loop

所以我在这里要做的是,如果你输入一个字符串而不是一个整数,你会回到起点

但由于某种原因,当你输入一个字符串

时,程序就会停止
while True:
    try:
        print("Will select a random number between selected limits: 'x' and 'y'")
        x = int(input("x = "))
    except ValueError:
        print("Please enter a number")
        break

2 个答案:

答案 0 :(得分:5)

while True:
    try:
        print("Will select a random number between selected limits: 'x' and 'y'")
        x = int(input("x = "))
        y = int(input("y = "))
    except ValueError:
        print("Please enter a number") # don't break here, let loop repeat
    else:
        break # only break when there is no error

答案 1 :(得分:1)

更短,一行;):

while True:
    try:
        print("Will select a random number between selected limits: 'x' and 'y'")
        x = int(input("x = "))
        y = int(input("y = "))
        break # only break when there is no error
    except ValueError:
        print("Please enter a number") # don't break here, let loop repeat