x = raw_input("Write a number")
if x.isalpha():
print "Invalid!"
elif x%2==0:
print "The number you have written is EVEN"
elif x%2!=0:
print "The number you have written is ODD"
else:
print "Invalid!"
应该检查数字是奇数还是偶数并打印出来。我的 if 语句检查 raw_input 是否是字母表,因为那行不通。我的 elif 语句检查奇数或偶数。
请您参考如下方法:
raw_input 的返回值总是一个字符串。如果要在其上使用 % 运算符,则需要将其转换为整数:
x = raw_input("Write a number")
if x.isalpha():
print "Invalid!"
x = int(x)
您可以使用 exception handling 而不是 x.isalpha()相反:
try:
x = int(raw_input("Write a number"))
except ValueError:
print 'Invalid!'
else:
if x % 2 == 0:
print "The number you have written is EVEN"
else:
print "The number you have written is ODD"
因为如果输入不是有效整数,int() 将引发 ValueError。
