首页 > 解决方案 > 当输入非整数值时,如何防止我的程序终止?

问题描述

如何使程序在用户输入非整数值后循环?

我已经尝试使用“while int(u) != int”

u = raw_input("enter a positive number")
while u != int:
    u = raw_input("Please enter a number")
if u == int:
    print "that's a number"

标签: pythonpython-2.7loops

解决方案


尝试将其转换为类型,如果不是则捕获异常

while True:
    u = raw_input("Enter a positive number: ")
    try:
        num = int(u)
    except ValueError:
        print "{} is not a number".format(u)
        continue
    break
print "{} is a number".format(num)

这只检查以确保它是一个整数,而不是一个正数,但这应该很容易添加。


推荐阅读