如何使 try/except 循环直到 true

时间:2021-02-19 02:10:06

标签: python try-except

try:
    int(days)
except:
    print('Invalid input. A integer value was expected. Try again.')
    days = (input("Enter the number of days: ", ))

如何使这个 try 语句循环直到为真?

3 个答案:

答案 0 :(得分:5)

我建议将您的逻辑放在 try 块中,并且仅在异常时打印错误消息:

while True:
    try:
        days = int(input("Enter the number of days: "))
        break
    except ValueError:
        print("Invalid input. An integer value was expected. Try again.")

此外,您永远不应该使用裸 except。这是不好的做法。

答案 1 :(得分:4)

像这样将其包裹在 /some/long/path/and/a/file.txt 循环中:

while

答案 2 :(得分:1)

在 int(days) 之后做一个 while 语句和一个变量来结束它:

days = int(input("Enter the number of days: "))
done = False
while done == False:
    try:
        int(days)
        done = True
    except:
        print('Invalid input. A integer value was expected. Try again.')
        days = (input("Enter the number of days: ", ))