试图创建奇偶函数

时间:2013-04-07 21:36:01

标签: python python-2.7

我正在尝试创建一个函数,当我调用该函数时,它会提示用户输入一个整数并返回它是偶数还是奇数。 我试图这样做,以便我的代码在输入任何内容或输入字符串时向控制台输出错误,我已经达到了这一点,如果我输入一个数字,它返回数字,“是一个偶数”如果它是偶数和数字,“不是偶数”,如果它不是这里是我的代码下面我使用python 2.7.3

def is_even():
    x = int(raw_input("Enter number"))
    if x % 2 == 0:
        return x, "is an even number"
    else:
        return x, "is not an even number"

print is_even()

2 个答案:

答案 0 :(得分:6)

您应该使用try - except块:

def is_even():
    try:
        x = int(raw_input("Enter an integer: "))  # 'number' != 'integer'
        if x % 2 == 0:
            return x, "is an even number"
        else:
            return x, "is not an even number"
    except ValueError:
        return "Error: You didn't enter an integer!"

如果输入无法在行ValueError上解析为整数,则会引发x = int(...),在这种情况下,我们会到达底部返回语句。

答案 1 :(得分:1)

您可以在转换为int之前使用isdigit()方法:

def is_even():
    x = raw_input("Enter number")
    if x.isdigit():
        if int(x) % 2 == 0:
            return x, "is an even number"
        else:
            return x, "is not an even number"
    else:
        return x, "is not an int"