alonli 发表于 2017-4-28 07:03:12

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.   exceptKeyboardInterrupt:#键盘异常: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.'
页: [1]
查看完整版本: python教程:异常处理