用户输入内容长度限制的异常 分类: python异常 2013-06-24 10:48 335人阅读 评论(0) 收藏

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)

except KeyboardInterrupt: #当用户取消输入时,引发此异常
    print "Cancel it "

except EOFError:
    print '\n Why did you do an EOF on me?'

except ShortInputException,x:

'''如果引发该异常ShortInputException实例赋给后面那个名字x;当用户输入内容长度<3时,引发此异常;建议此处使用except ShortInputException as x:如果引发该异常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'

posted @ 2013-06-24 10:48  前行者2011  阅读(155)  评论(0编辑  收藏  举报