在NameError时分配操作

时间:2015-02-04 13:15:36

标签: python python-2.x nameerror

我正在尝试输入只是一个数字或返回错误消息,并再次要求您输入该号码。 我想使用输入而不是raw_input,如果它返回一个错误,如果你输入“h”我想让它说错误并再次提出问题。 但如果它是+ ve数字或-ve数字继续。我只使用raw_input上的验证进行管理,并且无法使用Nameerror异常获取任何地方。但它对-ve数字不起作用

def numbercheck():
    Answercheck =  False
    inputanswer = raw_input("What is your number?")
    while inputanswer.isdigit() == True and any(c.isalpha() for c in inputanswer) == False:
        print "success"
        return
    else:
        if inputanswer.isdigit() == True and any(c.isalpha() for c in inputanswer) == False:
            print "success"
            return
        else:
            print "INVALID NUMBER- Please try again: "
            numbercheck()

1 个答案:

答案 0 :(得分:0)

您可以尝试以下内容:

if inputanswer[0]=="+" or inputanswer[0]=="-":
    inputanswer = inputanswer[1:]