为什么下面的代码产生无限循环?如果我硬编码y的值等于10它不会永远持续下去,但如果我通过用户输入输入10,它会。
x = 0
y = raw_input("Enter a Number: ")
while x <= y:
x = x + 1
if x %2 == 0:
print x
else:
print "odd"
答案 0 :(得分:2)
您可能希望将y值(现在是字符串)转换为数字。
例如:
y = int(raw_input("Enter a number: "))
答案 1 :(得分:0)
解释@ SiggyF的答案,修改你的代码以摆脱不必要的行:
y = int(raw_input("Enter a number: "))
for x in range(0, y+1):
if x % 2 == 0:
print(x)
else:
print("odd")