Why this script can work?
Jm lists
practicalperl at gmail.com
Fri Jan 19 01:51:44 EST 2007
Please help with this script:
class ShortInputException(Exception):
'''A user-defined exception class.'''
def __init__(self,length,atleast):
Exception.__init__(self)
self.length=length
self.atleast=atleast
try:
s=raw_input('Enter something --> ')
if len(s)<3:
raise ShortInputException(len(s),3)
# Other work can continue as usual here
except EOFError:
print '\nWhy did you do an EOF on me?'
except ShortInputException,x:
print 'ShortInputException: The input was of length %d, was
expecting at least %d' %(x.length,x.atleast)
else:
print 'No exception was raised.'
My questions are:
1) ShortInputException,x: what's the 'x'? where is it coming?
2) The 'if' and 'else' are not in the same indent scope,why this can work?
Thanks in advance.
More information about the Python-list
mailing list