最多見的異常就是文件打開 時,找不到文件html
try: f = open(「file.txt」,」r」) except IOError, e: print e
而後就是命名空間異常,也就是沒有定義這個變量或對象python
try: s = None if s is None: print "s 是空對象" raise NameError #若是引起NameError異常,後面的代碼將不能執行 print len(s) except TypeError: print "空對象沒有長度"
還有就是違反運算法則的錯誤,兩個例子算法
def divide(a, b): try: return a / b except ZeroDivisionError as e: raise ValueError('Invalid inputs') from e x , y = 7, 3 try: result = divide(x, y) except ValueError: print('Invalid inputs') else: print('Result is %.1f' % result)
try: s = "hello" try: print s[0] + s[1] print s[0] - s[1] except TypeError: print "字符串不支持減法運算" except: print "異常"
文件的讀寫,能夠用異常處理方式作的更完善ide
try: f = open("hello.txt", "r") try: print f.read(5) except: print "讀文件異常" finally: print "釋放資源" f.close() except IOError: print "文件不存在"
python中的經常使用異常以下:htm
AssertionError
對象
AttributeError
blog
IOError
資源
ImportError
字符串
IndentationError
get
IndexError
KeyError
KeyboardInterrupt
NameError
SyntaxError
TypeError
UnboundLocalError
ValueError
參考