【发布时间】:2012-07-30 06:39:16
【问题描述】:
我刚开始使用 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: 有关,但为什么会这样?
【问题讨论】:
标签: python if-statement exception-handling while-loop