I'm just starting out with Python 2.7 and I don't understand why something is happening:
In the following code, an embellished version of an example from the python 2.7.2 tutorial, I get an unexpected result:
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'
When I put in an integer, the code ignores the else: statement and cuts straight to finally:. Clearly it's something to do with the while True: at the top but why is it happening?