python教程:异常处理

#例子1
1. #coding:utf-8  
   2.  
   3. def fun(a, b): 
   4.     if b == 0: 
   5.         raise Exception('info', 'zero')   
   6.     else: 
   7.         return a / b   
   8. i = 2 
   9. while i > 0: 
  10.     try: 
  11.         k = 0 
  12.         n = 5 / k 
  13.     except  KeyboardInterrupt:#键盘异常:ctr+ d可以推出循环 
  14.         break                
  15.     except Exception, e:      #异常对象 
  16.         print 'error', e      #输出异常信息 
  17.     finally: 
  18.         'finally' 
  19.     i -= 1 
  20. print 'end' 
  21.  
  22. print fun(1, 1) 
  23. print fun(1, 0) 

#-------------------------------------------

#例子2
#!/usr/bin/python
# Filename: raising.py

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.'

你可能感兴趣的:(python)