我刚开始使用Python 2.7,但是我不明白为什么会发生以下的情况:
在下面这段代码中,这是一个来自Python 2.7.2教程的例子,但是我得到了一个意外的结果:
while True:
try:
x = int(raw_input("Please enter a number: "))
break
except ValueError:
print "Oops! That was not a valid number. Try again..."
else:
print 'Thanks,',x,'is indeed an integer'
finally:
print 'all done, bye'
当我输入一个整数时,代码会忽略
else:
语句并直接跳到 finally:
。显然这与顶部的 while True:
有关,但为什么会发生这种情况?